JavaScript中的正则表达式组
我想在我的字符串中找到一些单词。示例:{add_First}和/或{ban_1} 第一个的正则表达式:JavaScript中的正则表达式组,javascript,regex,Javascript,Regex,我想在我的字符串中找到一些单词。示例:{add_First}和/或{ban_1} 第一个的正则表达式:var arr=str.match(/{add_([A-Z]+)}/gi) 第二个正则表达式:var-arr=str.match(/{ban_([0-9]+)}/gi) 但是如何将这两个正则表达式组合起来呢 /{(add_([A-Z]+)|ban_([0-9]+))}/gi 以下是一份: 那么你会从中得到什么呢?我假设OP想要得到一个任意函数,它将返回一个数组,比如[1',First',2',
var arr=str.match(/{add_([A-Z]+)}/gi)代码>
第二个正则表达式:var-arr=str.match(/{ban_([0-9]+)}/gi)代码>
但是如何将这两个正则表达式组合起来呢
/{(add_([A-Z]+)|ban_([0-9]+))}/gi
以下是一份:
那么你会从中得到什么呢?我假设OP想要得到一个任意函数,它将返回一个数组,比如[1',First',2',Second',…]
或[[1',First'],[2',Second'],…]
。正则表达式将返回完全匹配组的数组,即[{add_First}'、{ban_1}'、…]
@VisioN我仍然不确定您的意思。在我看来,OP只是想检查字符串中是否存在文本。如果str
变量设置为Hello,{add_First}world代码>,例如,将正则表达式从我的答案传递到str.match(…)
将返回一个数组,其中包含“{add_First}”
。但是VisioN是对的,我无法使用您的代码获取ID?我该如何更改它呢?str=str.replace(/{(添加([A-Z]+))|ban([0-9]+)}/gi,函数(匹配,id){//console.log(id);var o=Core.get_data_by_id(ex.extensions,id);return(o&&o.status==“1”)?o.html:match;});