Javascript 正则表达式;don';t匹配数字,除非后跟'/';
我有一个字符串:Javascript 正则表达式;don';t匹配数字,除非后跟'/';,javascript,regex,Javascript,Regex,我有一个字符串:{16}{2/W}{G/R}{W}。我使用javascript正则表达式来提取括号内容,但我想忽略任何数字括号,如{16}。但是,我希望匹配具有数字和字母的括号,如{2/W}。到目前为止,我有/{([^}0-9]+)}/g,它匹配{g/R}和{W}很好,并且按照我的要求排除{16},但它不匹配{2/W}。有没有一种说法是“除非后面跟非数字,否则不要匹配数字”?你可以这样说: var string=“{16}{2/W}{G/R}{W}”; var result=string.ma
{16}{2/W}{G/R}{W}
。我使用javascript正则表达式来提取括号内容,但我想忽略任何数字括号,如{16}
。但是,我希望匹配具有数字和字母的括号,如{2/W}
。到目前为止,我有/{([^}0-9]+)}/g
,它匹配{g/R}
和{W}
很好,并且按照我的要求排除{16}
,但它不匹配{2/W}
。有没有一种说法是“除非后面跟非数字,否则不要匹配数字”?你可以这样说:
var string=“{16}{2/W}{G/R}{W}”;
var result=string.match(/{(\d*[^}\d]+[^}]*)}/g)
控制台日志(结果)代码>
var regExample=“{16}{2/W}{G/R}{W}”;
var matches=regExample.match(/{([^}\d]+)\}{(\d+\/\w+)}/g)
console.log(匹配项)
试试这个:/{\d*?[a-zA-Z\/]+\d*?}/g
你有没有尝试过逃脱{/code>和}
?@Yuriy Yakym,它只匹配{2/W}
而不是{W}
或{g/R}
@YuriyYakym抱歉,我忘了全局标志。你的解决方案确实有效。谢谢:)