首先:\b\w+(?=ing)
由于有正预测先行断言,不包括自身在内。
所以在 例如 aaaaingbbbbb cccccing 中匹配的是
aaaa 和 ccccc 部分。
如果把正则变成 \b\w+(?=ing)\w+\b 的话
在 aaaaingbbbbb cccccing 中匹配的是什么呢?
小子是这么理解的,求各位大神指教。
首先 \b\w+ 说的是以任意字符开头,但是必须有东西开头
(?=ing) 说的是 有 ing 。但匹配的东西不能包含ing
\w+\b 说的是必须有字符结尾。
所以,小子觉得,在以上字符串中, 此正则应该匹配的是: aaaabbbbb 和 ccccc 。
但是事实匹配的是:aaaaingbbbbb cccccing 。
求真相,求指教。
由于有正预测先行断言,不包括自身在内。
所以在 例如 aaaaingbbbbb cccccing 中匹配的是
aaaa 和 ccccc 部分。
如果把正则变成 \b\w+(?=ing)\w+\b 的话
在 aaaaingbbbbb cccccing 中匹配的是什么呢?
小子是这么理解的,求各位大神指教。
首先 \b\w+ 说的是以任意字符开头,但是必须有东西开头
(?=ing) 说的是 有 ing 。但匹配的东西不能包含ing
\w+\b 说的是必须有字符结尾。
所以,小子觉得,在以上字符串中, 此正则应该匹配的是: aaaabbbbb 和 ccccc 。
但是事实匹配的是:aaaaingbbbbb cccccing 。
求真相,求指教。
2.(?=ing) 意思是以当前字符开始为ing的字符串,但不参与匹配结果(预测,就是告诉你这个地方应该是ing),而不是匹配的东西不能包含ing
你这么写的可以理解为
\b\w+ing\w+\b
应该是等效于
\b\w+ing\w*\b