Python 正则表达式:Don';不匹配已经是单词一部分的字符串
这听起来很简单,所以我想我可能遗漏了一些东西 假设我想使用正则表达式来匹配字符串“cat”,我可以很好地做到这一点,但是,我不想匹配“concatenate”,例如,或任何其他包含“cat”的单词,我只想单独匹配“cat” 我将如何实现这一点?我考虑了如下情况:Python 正则表达式:Don';不匹配已经是单词一部分的字符串,python,regex,Python,Regex,这听起来很简单,所以我想我可能遗漏了一些东西 假设我想使用正则表达式来匹配字符串“cat”,我可以很好地做到这一点,但是,我不想匹配“concatenate”,例如,或任何其他包含“cat”的单词,我只想单独匹配“cat” 我将如何实现这一点?我考虑了如下情况: (CAT | CAT |)CAT |)(* 但这似乎并不正确。如果“Cat”是句子/行中的第一个单词,我不能在两边加空格 有没有办法用正则表达式排除字符?类似于“不是A-z或“cat”两边都是0-9”之类的词?试试单词边界: /\bca
(CAT | CAT |)CAT |)(*
但这似乎并不正确。如果“Cat”是句子/行中的第一个单词,我不能在两边加空格
有没有办法用正则表达式排除字符?类似于“不是A-z或“cat”两边都是0-9”之类的词?试试单词边界:
/\bcat\b/gi
A,
\b
,本质上是一种查找单词字符后跟非单词字符的方法,反之亦然(\w\w |\w\w | ^\w | \w$
)。尝试单词边界:
/\bcat\b/gi
A,
\b
,本质上是一个查找单词字符后跟非单词字符或反之亦然(\w\w | \w\w | ^\w | \w$
)。您可以使用单词边界:
\bcat\b
如果要仅禁止某些字符,请使用lookarounds:
(?<![a-zA-Z0-9])cat(?![a-zA-Z0-9])
(?您可以只使用单词边界:
\bcat\b
如果要仅禁止某些字符,请使用lookarounds:
(?<![a-zA-Z0-9])cat(?![a-zA-Z0-9])
(?你的正则表达式风格是什么?你使用什么语言/工具?这将在Python程序中使用。你的正则表达式风格是什么?你使用什么语言/工具?这将在Python程序中使用。单词边界是我一直在寻找的,非常感谢!当堆栈溢出允许时,我会接受这个答案。单词边界是我一直在寻找的非常感谢!当堆栈溢出允许时,我将接受这个答案。