您可以使用带有两个反向引用的正则表达式来匹配交替出现的小写字母:^([a-z])(?!\1)([a-z])(?:\1\2)*\1?$ 正则表达式演示 正则表达式解析: ^:匹配开头 ([a-z]):捕获组 #1 中匹配第一个字母 (?!\1):顺序环视,确保不匹配相同的字母 ([a-z]):捕获组 #3 中匹配第二个字母 (?:\1\2)*:匹配零或多个首尾字母成对出现的字符 \1?:匹配可选的结尾前的首字母 $:匹配结尾
^
和$
锚定模式。 - Wiktor Stribiżew