以下是哪些令牌模式匹配:[A-Za-z0-9 _] +(?= \\ s +)

时间:2018-07-31 01:57:43

标签: regex

我理解[A-Za-z0-9_]+的含义,它对应于一个或多个包含大写字母,小写字母,数字和下划线的字符的重复序列,但是整个表达式对应什么?

1 个答案:

答案 0 :(得分:0)

我将假设您的正则表达式为/[A-Za-z0-9_]+(?=\s+)/,并且您的编程语言要求您以\的身分使用\\

就像你说的,[A-Za-z0-9_]+与一个或多个字母数字字符匹配。

(?=)模式表示positive look ahead表达式。我们正在检查字母数字字符之后是否有一个或多个(+)空格(\s)字符。但是,/[A-Za-z0-9_]+\s+//[A-Za-z0-9_]+(?=\s+)/之间的区别在于,前者将在比赛中包含空白,而后者将不包含空白。

如果您在this_is_followed_by_whitespace␠␠␠(其中“␠”表示空格)上运行正则表达式,则将仅匹配this_is_followed_by_whitespace。该表达式只是向前检查是否有空格。在同一字符串上运行/[A-Za-z0-9_]+\s+/将匹配this_is_followed_by_whitespace␠␠␠

this RegExr demo上使用正则表达式。