14 个常用的正则表达式技巧

本文分享了15个在工作中常用的正则表达式技巧,包括格式化货币、Trim功能、解析链接参数、驼峰式命名、首字母大写、转义和取消转义HTML、24小时制时间匹配、日期格式验证、十六进制颜色值匹配、URL前缀检查、版本号验证、提取图片地址以及电话号码格式化等。这些技巧能帮助提升开发效率。
摘要由CSDN通过智能技术生成


前言

你对正则表达式有何看法?我猜你会说这太晦涩难懂了,我对它根本不感兴趣。是的,我曾经和你一样,以为我这辈子都学不会了。

但我们不能否认它确实很强大,我在工作中经常使用它,今天,我总结了15个非常使用的技巧想与你一起来分享,同时也希望这对你有所帮助。

那么,我们现在就开始吧。


1. 格式化货币

我经常需要格式化货币,它需要遵循以下规则:

123456789 => 123,456,789

123456789.123 => 123,456,789.123


const formatMoney = (money) => {
   
  return money.replace(new RegExp(`(?!^)(?=(\\d{3})+${
     money.includes('.') ? '\\.' : '$'})`, 'g'), ',')  
}

formatMoney('123456789') // '123,456,789'
formatMoney('123456789.123') // '123,456,789.123'
formatMoney('123') // '123'

您可以想象如果没有正则表达式我们将如何做到这一点?

2. Trim功能的两种实现方式

有时我们需要去除字符串的前导和尾随空格,使用正则表达式会非常方便,我想与大家分享至少两种方法。

方式1

const trim1 = (str) => {
   
  return str.replace(/^\s*|\s*$/g, '')    
}

const string = '   hello medium   '
const noSpaceString = 'hello medium'
const trimString = trim1(string)

console.log(string)
console.log(trimString, trimString === noSpaceString)
console.log(string)

太好了,我们已经删除了字符串“string”的前导和尾随空格。

方式2

const trim2 = (str) => {
   
  return str.replace(/^\s*(.*?)\s*$/g, '$1')    
}

const string = '   hello medium   '
const noSpaceString = 'hello medium'
const trimString = trim2(string)

console.log(string)
console.log(trimString, trimString === noSpaceString)
console.log(string)

通过第二种方式,我们也达到了目的。

3.解析链接上的搜索参数

你一定也经常需要从链接中获取参数吧?

// For example, there is such a link, I hope to get fatfish through getQueryByName('name')
// url https://qianlongo.github.io/v
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿超学编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值