JavaScript中的正则表达式组

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',

我想在我的字符串中找到一些单词。示例:{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',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;});