/**
* 替换字符串,默认替换 ""。传递 regExps,一个正则表达式数组。
*
* @param source 被修剪的字符串
* @param regExps 正则表达式,找到匹配的字符串,然后替换掉
* @param replacement 不传递,默认被替换的字符串是 ""。传递的数组等于 regExps 的长度,就一一对应进行替换。如果传递的
* 数组小于 regExps,就与前几个进行对应替换,其余的用默认 "" 替换。
*/
function regTrim(source: string, regExps: RegExp[], replacement?: string[]) {
let replaced = source;
let substitute = "";
for (let i = 0; i < regExps.length; i++) {
if (!replacement) substitute = "";
else {
if (!replacement[i]) substitute = "";
else substitute = replacement[i];
}
replaced = replaced.replace(regExps[i], substitute);
}
return replaced;
}
function regTrim(source, regExps, replacement) {
let replaced = source;
let substitute = "";
for (let i = 0; i < regExps.length; i++) {
if (!replacement) substitute = "";
else {
if (!replacement[i]) substitute = "";
else substitute = replacement[i];
}
replaced = replaced.replace(regExps[i], substitute);
}
return replaced;
}
举例一:替换文本中的 "阅读"、"摘要:",把第一个去掉,第二个变成“简略信息”。
let text = "阅读。。。。Hello World。摘要:Hello World Hello World Hello World";
regTrim(text, [/阅读/g, /摘要:/g], ["", "简略信息"]);
举例二:去掉文本中的 "阅读"、"摘要:":
regTrim(text, [/阅读/g, /摘要:/g]);