regex - 搜索带有任何重复字符的单词

标签 regex perl

寻找 perl one-liner what 将找到具有下一个模式的所有单词:

X(not_X_chrs)X(not_X_chrs)X    e.g. cyclic

对于一个字符,这很容易,例如为一个'
perl -nle 'print if /^a[^a]+a[^a]+a$/' < /usr/share/dict/web2

但我想搜索 任何 字符,因此,寻找一个正则表达式来查找 全部 这样的词:
azalea   #repeating a
baobab   #repeating b
cyclic   #c

等等..

试过这个:
perl -nle 'print if m/^([a-z])[^$1]+$1[^$1]+$1$/i' </usr/share/dict/web2

但不起作用。

最佳答案

(?:(?!STRING).)


(?:STRING)

作为
[^CHAR]


CHAR

所以你可以使用
/
   ^
   (\pL)
   (?:
      (?:(?!\1).)+
      \1
   ){2}
   \z
/sx

关于regex - 搜索带有任何重复字符的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11042730/

相关文章:

mysql - PERL:脚本未完成

perl - 将 sys/ioctl.ph 添加到 Perl 头文件

java - 简化复杂的正则表达式

regex - HTML5 模式匹配和 MinLength 文本框问题 -

mysql - REGEXP 匹配另一个组列表中的组字符串,而不管顺序如何 - SQL

c# - 使用 .NET Micro Framework,为什么我的正则表达式匹配失败?

ios - Objective-C - 具有特定子字符串的 NSRegularExpression

Perl 语法错误打印列表索引

perl - 如何说服Devel::Trace打印BEGIN-block语句?

perl - 如何在 Perl Pod 的链接中添加格式?