我正在尝试使用JavaScript的正则表达式从字符串中获取所有可能的匹配项。看起来我的方法并没有匹配已经匹配过的字符串部分。
变量:
我得到的所有匹配结果如下:
我想要的匹配结果是:
在我的脑海中,我希望
变量:
var string = 'A1B1Y:A1B2Y:A1B3Y:A1B4Z:A1B5Y:A1B6Y:A1B7Y:A1B8Z:A1B9Y:A1B10Y:A1B11Y';
var reg = /A[0-9]+B[0-9]+Y:A[0-9]+B[0-9]+Y/g;
代码:
var match = string.match(reg);
我得到的所有匹配结果如下:
A1B1Y:A1B2Y
A1B5Y:A1B6Y
A1B9Y:A1B10Y
我想要的匹配结果是:
A1B1Y:A1B2Y
A1B2Y:A1B3Y
A1B5Y:A1B6Y
A1B6Y:A1B7Y
A1B9Y:A1B10Y
A1B10Y:A1B11Y
在我的脑海中,我希望
A1B1Y:A1B2Y
能够匹配,同时还有A1B2Y:A1B3Y
,尽管字符串中的A1B2Y
需要成为两个匹配的一部分。
string.split(":")
然后循环遍历数组会给你更好的结果。 - Bergi