我需要一个正则表达式,它匹配由重复一次或多次的单个字母组成的字符串 例如,正则表达式必须匹配: 一个 b BB AA CCCC DDDDD
但绝对不能匹配 AB 英国广播公司 ddddddddde AC CDE 艺术。
我正在使用Java。
答案 0 :(得分:3)
(在您当前的问题中,我认为存在拼写错误。我认为cc
应该不匹配。)
([a-zA-Z])\1*
括号表示捕获组。 \1
是对第一个捕获组的反向引用。
这适用于java.util.regex.Matcher.matches
,但如果您使用java.util.regex.Matcher.find
之类的内容允许子序列匹配,则需要
^([a-zA-Z])\1*$
确保它与整个输入匹配。