我有以下正则表达式,我想允许从一个空格开始(不是强制性的),我应该怎么做呢?我试着用下面的方法,它不工作
@"s^[a-zA-Z0-9_]+s*$"
您需要在之后放置s
您的起始插入符号(^
)。例如
^s?[a-zA-Z0-9_]+s*$
注意我还在s
上添加了一个量词(?
)来表示"这可以出现0次或1次"。
同样,类[a-zA-Z0-9_]
可以替换为w
(这是同样的事情)。因此,缩短的模式变成:
^s?w+s*$
的意义:
^ # start of string
s? # 0 or 1 whitespace character ([ fnrtv])
w+ # 1 or more of the following: a-z, A-Z, 0-9, _
s* # 0 or more whitespace characters ([ fnrtv])
$ # end of string
你可以使用这个正则表达式:
@"^s?w+s*$"
- 你需要在可选的
s?
之前放置^
- 还请注意,我使用了
w
,相当于[a-zA-Z0-9_]
@呢"? (a-zA-Z0-9_) + s * $"