正则表达式 - 交替字符的匹配模式

2024-02-15

我想匹配交替小写字符的模式。

ababababa -> match

我试过这个

([a-z][a-z])+[a-z]

但这也将是一场比赛

ababxyaba

您可以使用此正则表达式与 2 个反向引用来匹配交替的小写字母:

^([a-z])(?!\1)([a-z])(?:\1\2)*\1?$

正则表达式演示 https://regex101.com/r/unaowS/2

正则表达式分解:

  • ^: Start
  • ([a-z]):匹配捕获组 #1 中的第一个字母
  • (?!\1):向前查看以确保我们不会再次匹配相同的字母
  • ([a-z]):匹配捕获组 #3 中的第二个字母
  • (?:\1\2)*:匹配零对或多对第一个和第二个字母
  • \1?:匹配结束前的可选第一个字母
  • $: End
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式 - 交替字符的匹配模式 的相关文章

随机推荐