我尝试了多种方法并阅读了当前可用的博客,但没有运气
我只想检测
1. pavneet
2. pavnet
但不是
1. pavneet's name
2. pavnet's name
3. pavneet name
4. pavnet's name
(即使在 's 之后也想将名称添加为 -ve 前瞻)
到目前为止我已经尝试过这个https://regex101.com/r/8SUCMQ/1
(pavneet|pavne{1,2}t)\'?s?(?!\ *name)
答案 0 :(得分:1)
您可以将 's
放在前瞻中并使其可选。
你也可以把(pavneet|pavne{1,2}t)
写成pavnee?t
\bpavnee?t(?!(?:'s)? name\b)
\bpavnee?t
防止部分匹配的单词边界,匹配 pavnet
或 pavneet
(?!
负前瞻
(?:'s)?
(可选)匹配 's
和一个空格name\b
匹配 name
和单词边界)
关闭前瞻