Regex 字符串末尾的正则表达式负匹配

Regex 字符串末尾的正则表达式负匹配,regex,Regex,我需要一个正则表达式来匹配 “我的狗”、“我的狗”、“我的狗” 但不是 “我的狗”,“我的狗” 搜索字符串“我的狗”。我现在有一个表达,我有: reg_replace("/\b(my dog)\b/ui",'found','My dog'); 但这显然与“我的狗”匹配,而不是“我的狗”。任何帮助都将不胜感激。我的..?狗$ =任何空间 .? = 任何空格的0或1 $=字符串结尾 由于不区分大小写,这无关紧要。 如果你只有这些,你可以做一个“?”来得到这只带“&”的狗 有了绳

我需要一个正则表达式来匹配

“我的狗”、“我的狗”、“我的狗”

但不是

“我的狗”,“我的狗”

搜索字符串“我的狗”。我现在有一个表达,我有:

reg_replace("/\b(my dog)\b/ui",'found','My dog');
但这显然与“我的狗”匹配,而不是“我的狗”。任何帮助都将不胜感激。

我的..?狗$

=任何空间 .? = 任何空格的0或1

$=字符串结尾

由于不区分大小写,这无关紧要。 如果你只有这些,你可以做一个“?”来得到这只带“&”的狗 有了绳子的末端,你们可以简单地把这些你们不想要的狗带到外面去

用regex101测试,如果只有这些值,这就足够了。 Flags=gsmi(全局、多行、单线、不敏感)

尝试
\bmy&?dog(?!\S)
\bmy&?dog(?)
\bmy dog\b(?)
-您需要一个消极的前瞻。