Javascript 搜索并替换,记住在正则表达式中字符串已替换为哪个单词

Javascript 搜索并替换,记住在正则表达式中字符串已替换为哪个单词,javascript,regex,string,replace,Javascript,Regex,String,Replace,当在javascript中应用regexreplace时,如何找到被替换的子字符串 Main string : abcSSSdeSSfghEEEijSSSkEEElmSSSnSSSEEEopEEE 我想替换所有以“SSS”开头、以“EEE”结尾的最小长度子字符串。带。* 应用所需函数后,我应该得到修改后的字符串 abc.*ij.*lmSSSn.*opEEE 以及替换字符串的数组,如下所示: [ SSSdeSSfghEEE, SSSkEEE, SSSEEE ] 如何有效地实现上述所需函数将

当在javascript中应用
regex
replace时,如何找到被替换的子字符串

Main string : abcSSSdeSSfghEEEijSSSkEEElmSSSnSSSEEEopEEE
我想替换所有以“SSS”开头、以“EEE”结尾的最小长度子字符串。带。*

应用所需函数后,我应该得到修改后的字符串

abc.*ij.*lmSSSn.*opEEE
以及替换字符串的数组,如下所示:

[ SSSdeSSfghEEE,  SSSkEEE, SSSEEE ]

如何有效地实现上述所需函数

将函数作为第二个参数传递给String.replace:

var replacements = [];

var newString = oldString.replace(/*regex pattern here*/, function(match){
  replacements.push(match);
  return 'some replacement string';
});

将函数作为第二个参数传递给String.replace:

var replacements = [];

var newString = oldString.replace(/*regex pattern here*/, function(match){
  replacements.push(match);
  return 'some replacement string';
});

Javascript的
replace
允许我们传递一个函数,以便收集匹配的值:

var arr = []
string.replace(/SSS.*?EEE/g, function (match) {
  arr.push(match)
  return '.*'
})

模式中的
*?
确保它匹配最小长度的字符串,并且不会尝试从第一个
SSS
匹配到最后一个
EEE

Javascript的
replace
让我们传递一个函数,以便收集匹配的值:

var arr = []
string.replace(/SSS.*?EEE/g, function (match) {
  arr.push(match)
  return '.*'
})

模式中的
*?
确保它匹配最小长度的字符串,并且不会尝试从第一个
SSS
匹配到最后一个
EEE

您可以从编写代码开始…您可以从编写代码开始…该死,在我开始输入XD之前你就发布了,这就是我打开几个标签并处理它们的结果!我还想知道同样的正则表达式模式。我对正则表达式是新手。这就是我正在做的。但是没有成功该死,在我开始输入XD之前你就发布了这就是我打开几个标签并处理它们的结果!我还想知道同样的正则表达式模式。我对正则表达式是新手。这就是我正在做的。但是没有成功