超好用的6种正则表达式,前端开发人员必知!

全文共4719字,预计学习时长14分钟

来源:Pexels

 

正则表达式已经成为程序员的必备工具。几乎所有流行的编程语言都支持正则表达式,原因如下:正则表达式为开发人员提供了强有力的工具,使之能快速执行需要几十行代码才能完成的任务。

 

本文主要研究前端开发人员经常要面对的六大文本处理和操作任务,并进一步了解正则表达式如何简化这一过程。但也只是触及了正则表达式潜力之皮毛。

 

1. 将URL转换为链接

 

假设文本中有一个或多个URL,且均不是HTML锚元素,因此不能单击。要将url自动转换为链接,首先需要找到URL,然后用指向URL的<a>的href属性将每个URL装入标签<a>…</a>:

 

const str = "Visit https://en.wikipedia.org/ for moreinfo.";str.replace(/\b(https?|ftp|file):\/\/\S+[\/\w]/g, '<ahref="$&">$&</a>');// => "Visit <ahref="https://en.wikipedia.org/">https://en.wikipedia.org/</a> for more info."

 

注意:使用该正则表达式时要小心,因为它不会匹配以标点符号结尾的URL,也可能无法匹配更复杂的URL。

 

下面来看看其原理:

 

· \b 在被称为“单词边界”的位置进行匹配。

· (https?|ftp|file) 匹配字符“https”,或“http”,或“ftp”,或“file”

· : 按字面意义匹配冒号字符

· \/ 按字面意义匹配正斜杠字符

· \S 匹配除空白之外的单个字符

· + 与前一项匹配一次或多次

· [\/\w] 匹配正斜杠或单词字符。如果没有这个,该正则表达式将匹配URL结尾的任何标点符号。

· g 命令正则表达式引擎匹配所有出现的项而不是在首次匹配后即停止

· $& 在replace()的第二个参数中,将匹配的子字符串插入到替换字符串中

 

2. 删除重复的单词

 

文章和教程包含不必要的重复单词并不少见。即使是专业作家也要为这些错误进行校对。在谷歌新闻上简单地搜索“the”,就会发现数百家知名新闻机构的文章中都有重复的“the”。幸运的是,正则表达式可以用一行代码修复这个问题:

 

const str 
  • 9
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值