我正在尝试获取一个正则表达式,以测试字符串是否具有两个或多个字符列表,例如'i,j,k'
所以我的正则表达式是
[ijk]{2,}
如果字符是连续的,则正则表达式将匹配:
abcdefghijk
,但是如果还有其他散布在其中的字符,则不会:
abcdefghixjxk
和(i | j | k){2,}存在相同的问题
如何测试找到的总字符数,而不是连续发现的总字符数?
谢谢
答案 0 :(得分:0)
您可以使用正向先行检查是否再次出现:
[ijk](?=.*[ijk])
如果出现i,j或k后跟(.*
)个其他字符之后又出现另一个字符,则此匹配。
修改
我猜想绝对不需要提前进行正面预测(更多的习惯习惯),您可以使用:
[ijk].*[ijk]