如果文本只有一种类型的字母,则用于匹配的RegExp,例如“;kkk”;
如果文本只有一种字母类型,如何编写匹配的正则表达式?例如:“KKKKK”、“AAAAA”、“BBBB”、“CCCC”您可以使用组和反向引用来完成此操作 我的示例在Java的regex对话中,但您可以将其调整为支持反向引用的任何方言。例如,某些发动机需要如果文本只有一种类型的字母,则用于匹配的RegExp,例如“;kkk”;,regex,Regex,如果文本只有一种字母类型,如何编写匹配的正则表达式?例如:“KKKKK”、“AAAAA”、“BBBB”、“CCCC”您可以使用组和反向引用来完成此操作 我的示例在Java的regex对话中,但您可以将其调整为支持反向引用的任何方言。例如,某些发动机需要\(…\)而不是(…) 首先,需要一个组,用括号括起来表示: (.) 这匹配任何单个字符。如果您希望它特别是大写字母,可以使用(A-Z) 接下来,您需要匹配与组内容相同的第二个字符。您可以使用\1反向引用第一个匹配的内容: (.)\1 这将匹配
\(…\)
而不是(…)
首先,需要一个组,用括号括起来表示:
(.)
这匹配任何单个字符。如果您希望它特别是大写字母,可以使用(A-Z)
接下来,您需要匹配与组内容相同的第二个字符。您可以使用\1
反向引用第一个匹配的内容:
(.)\1
这将匹配AA
或BB
,但不匹配AB
。而不是A
,因为第二个字符是必需的
接下来,您需要指定第二个字符出现任意次数,包括零。这是用*
完成的
(.)\1*
这与A
,B
,AA
,BB
,AAA
,BBBBBBB
匹配,但与AB
或AAB
不匹配
在Java中,必须转义\
:
Pattern pattern = Pattern.compile("(.)\\1*");
您的正则表达式引擎可能:
-使用此选项搜索输入字符串中匹配的零件(因此baaab
匹配-它会查找AAAA
)
-或者它可能需要整个字符串来匹配模式(因此baaab
不匹配)
如果希望执行第一个行为的引擎执行第二个行为,请在模式的任一侧添加*
如果您想让执行第二个行为的引擎执行第一个行为,请在模式的开头添加
^
,在模式的结尾添加$
,这两个行为分别与行的开头和结尾匹配。您使用哪种语言/工具?它是否支持正则表达式中的反向引用。。。对于单词匹配,设置单词边界锚被遗忘。