Javascript Google应用程序脚本2中的正则表达式

Javascript Google应用程序脚本2中的正则表达式,javascript,regex,Javascript,Regex,我有一个文本文件,需要从中提取单词和数字。脚本搜索关键字,并在关键字后添加单词/数字 这是我从过滤器获得结果的地方: var ergebnis=text.match(filter[i]); 以下是正则表达式: var filter=[/ISIN (\w*)/g, /STK (\w*)/g , /(Kurs) EUR/g]; 正则表达式可用于单个单词ISIN和STK,但无法用于表达式Kurs EUR 我试过各种表达方式,但没有找到匹配的。我做错了什么?简要说明 您正在使用而不是:有关详细信息,

我有一个文本文件,需要从中提取单词和数字。脚本搜索关键字,并在关键字后添加单词/数字

这是我从过滤器获得结果的地方:

var ergebnis=text.match(filter[i]);
以下是正则表达式:

var filter=[/ISIN (\w*)/g, /STK (\w*)/g , /(Kurs) EUR/g];
正则表达式可用于单个单词
ISIN
STK
,但无法用于表达式
Kurs EUR

我试过各种表达方式,但没有找到匹配的。我做错了什么?

简要说明 您正在使用而不是:有关详细信息,请参见和

match()
文档:

如果正则表达式不包含
g
标志,
str.match()
将返回与
RegExp.exec()
相同的结果。返回的
数组
具有 一个额外的
input
属性,其中包含已删除的原始字符串 解析。此外,它还有一个索引属性,表示 字符串中匹配项的从零开始的索引

如果正则表达式包含
g
标志,则该方法返回
数组
包含所有匹配的子字符串,而不是匹配的对象。 捕获的组不会返回。
如果没有匹配项,则方法 返回
null

exec()
文档:

如果匹配成功,则
exec()
方法将返回一个数组并进行更新 正则表达式对象的属性返回的数组已被删除 匹配的文本作为第一个项目,然后每个项目对应一个项目 捕获匹配的括号,其中包含 捕获


代码 方法1-使用exec() 下面的代码段显示了如何使用
exec()
而不是
match()
来输出匹配的字符串及其各自的组

var数组=[
“是什么东西”,
“STK某物2”,
“库尔欧元”
]
无功滤波器=[
/ISIN(\w*)/g,
/STK(\w*)/g,
/(库尔德)欧元/克
];
array.forEach(函数){
filter.forEach(函数(f){
var m=f.exec(s)
如果(m){
log(`String:${m[0]}\n组:${m[1]}`)
}
})
})
简介 您正在使用而不是:有关详细信息,请参见和

match()
文档:

如果正则表达式不包含
g
标志,
str.match()
将返回与
RegExp.exec()
相同的结果。返回的
数组
具有 一个额外的
input
属性,其中包含已删除的原始字符串 解析。此外,它还有一个索引属性,表示 字符串中匹配项的从零开始的索引

如果正则表达式包含
g
标志,则该方法返回
数组
包含所有匹配的子字符串,而不是匹配的对象。 捕获的组不会返回。
如果没有匹配项,则方法 返回
null

exec()
文档:

如果匹配成功,则
exec()
方法将返回一个数组并进行更新 正则表达式对象的属性返回的数组已被删除 匹配的文本作为第一个项目,然后每个项目对应一个项目 捕获匹配的括号,其中包含 捕获


代码 方法1-使用exec() 下面的代码段显示了如何使用
exec()
而不是
match()
来输出匹配的字符串及其各自的组

var数组=[
“是什么东西”,
“STK某物2”,
“库尔欧元”
]
无功滤波器=[
/ISIN(\w*)/g,
/STK(\w*)/g,
/(库尔德)欧元/克
];
array.forEach(函数){
filter.forEach(函数(f){
var m=f.exec(s)
如果(m){
log(`String:${m[0]}\n组:${m[1]}`)
}
})
})