首页 > 其他分享 >03#JS 工具函数:正则表达式匹配字符,替换该字符,支持多个正则表达式替换

03#JS 工具函数:正则表达式匹配字符,替换该字符,支持多个正则表达式替换

时间:2022-12-05 01:00:11浏览次数:34  
标签:字符 正则表达式 regExps Hello 替换 substitute replacement

/**
 * 替换字符串,默认替换 ""。传递 regExps,一个正则表达式数组。
 *
 * @param source 被修剪的字符串
 * @param regExps 正则表达式,找到匹配的字符串,然后替换掉
 * @param replacement 不传递,默认被替换的字符串是 ""。传递的数组等于 regExps 的长度,就一一对应进行替换。如果传递的
 * 数组小于 regExps,就与前几个进行对应替换,其余的用默认 "" 替换。
 */
export 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;
}

举例一:替换文本中的 "阅读"、"摘要:",把第一个去掉,第二个变成“简略信息”。

let text = "阅读。。。。Hello World。摘要:Hello World Hello World Hello World";
regTrim(text, [/阅读/g, /摘要:/g], ["", "简略信息"]);

举例二:替换文本中的 "阅读"、"摘要:",全部去掉:

regTrim(text, [/阅读/g, /摘要:/g]);

标签:字符,正则表达式,regExps,Hello,替换,substitute,replacement
From: https://www.cnblogs.com/Enziandom/p/16951308.html

相关文章

  • 字符与字符串的区别
    首先他们完全不同在c语言中1、“字符“”用单引号作为定界符,“字符串”用双引号作为定界符;2、“字符”在屏幕上打印一个字符的时候,需要在printf函数中,使用“%c”这个占位......
  • Python中的字符串常用处理方法
    字符串字符串就是一系列的字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号,如下所示:"Thisisastring."'Thisisalsoastring.'这种......
  • URL 中的中文变成了一堆百分号,怎么转换成字符?
    今天遇到了一个如何通过正则表达式匹配URL中的字符时因为中文被浏览器转换成了百分号而不能被正确识别的问题。如下这种URL:https://www.cnblogs.com/Enziandom/tag/Web......
  • python字符串常用方法介绍,基于python3.10
     python字符串常用方法-目录:1、strip()、lstrip()、rstrip()2、removeprefix()、removesuffix()3、replace()4、split()、rsplit()5、join()6、upper()、lower()、capita......
  • 分享 ASCII 字符集的字模
    是做VGA显示屏时用到的,这是字模资源:gitee链接以下为字模代码://133*16*8字模的parameterparameter[7:0]C_ascii_character[2127:0]={0x00,0x00,0......
  • vba-在特定列中查询目标字符串是否存在
    PrivateSubSearchByTaget()IfConfigSht.Range("A:A").Find(What:="1232",LookAt:=xlWhole)IsNothingThenMsgBox"不存在"EndIfEndSubFunctionSea......
  • 如何使用.join()方法用指定分隔符分隔数组为字符串?
    Array.prototype.join()方法.join()方法把数组中的所有元素连接成一个字符串并返回这个字符串。用逗号或指定的分隔符字符串分隔。如果数组只有一个元素,那么将返回该元素而......
  • C#11:原始字符串
    这一直以来是我写代码的一个痛点,C#11终于解决了,那就是我想把一个整齐的格式的json字符串转出,但不能如愿,要不用一个三方库来搞定,要不就加各种双引号,如果有变量还得小心处......
  • 4 字符串
    HeadFirstJava和AcWingJava课程做的总结4。计算机中只有0/1,会有字符是因为将特定的0/1序列转换为字符。4.1ASCII码每个常用字符都对应一个-128~127的数字,二者......
  • C#11:原始字符串
    这一直以来是我写代码的一个痛点,C#11终于解决了,那就是我想把一个整齐的格式的json字符串转出,但不能如愿,要不用一个三方库来搞定,要不就加各种双引号,如果有变量还得小心......