否定重复词模式
Negating duplicate words pattern
我是正则表达式的新手,我有以下模式可以检测以破折号分隔的重复单词
\b(\w+)-+\b
// matches: hey-hey
// not matches: hey-hei
我真正需要的是这个模式的否定版本。
我试过负前瞻,但效果不佳。
(?!\b(\w+)-+\b)
您可以使用
\b(\w+)-+(?!\b)\w+
参见regex demo。 详情:
\b
- 单词边界
(\w+)
- 第 1 组:一个或多个单词字符
-+
- 一个或多个连字符
(?!\b)\w+
- 一个或多个不等于第一个捕获组值的单词字符。
我是正则表达式的新手,我有以下模式可以检测以破折号分隔的重复单词
\b(\w+)-+\b
// matches: hey-hey
// not matches: hey-hei
我真正需要的是这个模式的否定版本。 我试过负前瞻,但效果不佳。
(?!\b(\w+)-+\b)
您可以使用
\b(\w+)-+(?!\b)\w+
参见regex demo。 详情:
\b
- 单词边界(\w+)
- 第 1 组:一个或多个单词字符-+
- 一个或多个连字符(?!\b)\w+
- 一个或多个不等于第一个捕获组值的单词字符。