为什么c正则表达式不适用于这种情况

本文关键字:情况 适用于 不适用 正则表达式 为什么 | 更新日期: 2023-09-27 18:25:07

这是我的正则表达式

's[a-z]+('s|$)

输入:a b c

输出:b

为什么它没有检测到"c",尽管它后面有空间,并且在的末尾结束

为什么c正则表达式不适用于这种情况

(?<='s)([a-z]+)(?='s|$)

试试这个。当您吃掉's时,正则表达式's[a-z]+('s|$)将不起作用。因此c无法匹配,因为之前的's已经被b吃掉。请改用0 width assertions

请参阅演示。

http://regex101.com/r/aW3pR4/20