是否有一个正则表达式匹配某些索引处带有字母“a”或“x”的字符串?
例如,索引可能是
0, 3, 6
1, 4, 7
2, 5, 8
根据这些指数可能的模式:
"a--a--a--"
"-x--x--x-"
"--a--a--a"
其他出现的"a"
或"x"
都可以。我只是想确保某些索引包含"a"
。
编辑:这个问题是一个井字棋盘的子问题。我要通过使用正则表达式确定是否有胜利者。我不想要这个答案。我只是想要一点帮助我走向最终答案。以上是为了帮助我找到一个可以识别是否有垂直赢家的正则表达式。
答案 0 :(得分:3)
如果您的井字符看起来像9个字符长的字符串,测试此模式应该足以知道是否有垂直线:
a..a..a
答案 1 :(得分:2)
您可以使用此正则表达式:
([a-zA-Z])..\1..\1
([a-zA-Z])
将匹配并捕获## n+3
匹配n+6
和\1
位置的另外两个相同字母的实例,其中n
是字母的第一个位置。答案 2 :(得分:1)
由于a
每3个字符出现一次,(a..)*
将匹配这些重复。然后你只需要在其前面加上一个匹配前面所需字符数的模式,这只是n-1
.
个模式。
因此,对于您提供的三个示例,它是
^(a..)*
^.(a..)*
^..(a..)*