美文网首页web前端技术分享
常用 js 正则表达式

常用 js 正则表达式

作者: 阿巳交不起水电费 | 来源:发表于2024-10-29 09:39 被阅读0次

后续中有遇到其他常用的js正则会持续更新~~~

获取带有单位字符串前的数字

let fn = (val='')=>{
    return (val.match(/\d+(\.)?\d+/) || [])[0]
}
fn('50.22MB') // '50.22'
fn('50px') // '50'
fn('abc123.45abc') // '123.45'

// tip:parseInt() 或 parseFloat() 函数也可以达到相同效果(注意不是数字开头的字符串将得到 NaN)
parseFloat('50.33px') // 50.33
parseInt('50.33px') // 50
parseFloat('abc123.45abc') // NaN

验证是否是身份证号码

  /**
   *  验证是否是身份证号码
   * @param card 身份证号码
   * @return {boolean} true: 是 false:否
   */
  function isCardNo(card) {
    if(!card) return false
    // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
    let reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
    return reg.test(card)
  }

tip: 根据身份证号码解析出生年月

    /**
     * 根据身份证号码解析出生年月
     * @param idCard 身份证号码
     * @param format 返回类型 yyyy-MM-dd
     * @return {string|null}
     */
    function getBirthDateByIDNo(idCard, format="yyyy-MM-dd") {
      if(!isCardNo(idCard)) return null
      let pattern = /^(\d{6})(\d{4})(\d{2})(\d{2})/;
      let match = pattern.exec(idCard);
      if (match) {
        let year = match[2];
        let month = match[3];
        let day = match[4];
        // 解析 format
        let formatReg = format.replace('yyyy','$1').replace('MM','$2').replace('dd','$3')
        // return `${year}${month}${day}`.replace(/^(\d{4})(\d{2})(\d{2})$/, '$1-$2-$3')
        return `${year}${month}${day}`.replace(/^(\d{4})(\d{2})(\d{2})$/, formatReg)
      }
      return null;
    }

验证是否是邮箱

function isEmail(val) {
    let reg = /^([0-9A-Za-z\-_.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g
    // ^(\\w)+(\\.\\w+)*@(\\w)+((\\.\\w{2,3}){1,3})$"
    return reg.test(val)
  }

验证是否是手机号码

function isPhone(val){
    return /^1[3|4|5|7|8|9]\d{9}$/.test(val)
}

若对你有帮助,请点个赞吧,若能打赏不胜感激,谢谢支持!
本文地址:https://www.jianshu.com/p/bd22414e65b7?v=1730252342016,转载请注明出处,谢谢。

相关文章

  • 正则初解

    title: js验证常用正则表达式date: 2017-03-03 验证 正则表达式 本文介绍js验证常用的正则...

  • 正则

    1 JS之正则表达式15个常用的javaScript正则表达式

  • js常用正则表达式

    对常用的js正则表达式进行整理,归档!!! 什么是正则表达式?它有什么作用? 正则表达式(regular expr...

  • 常用正则表达式

    以下是常用的代码收集,学习用。转自豪情博客园 常用的js正则表达式

  • (转)正则大全 数字、邮箱、数据、整数、汉字、身份证等

    常用js正则表达式大全一、校验数字的js正则表达式1 数字:^[0-9]3 至少n位的数字:^\d{n,}5 零和...

  • 正则表达式汇总

    1.正则表达式一般命名为regex 2.JS正则表达式常用的方法 方法举例 3.常用限定符号 4.常用元字符 5....

  • 总结js常用函数和常用技巧

    学习过程中总结的干货,包括常用函数、常用js技巧、常用正则表达式等。 Ajax封装 使用方法: 后台响应Ajax ...

  • JS常用正则表达式备忘录

    摘要: 玩转正则表达式。 原文:JS常用正则表达式备忘录 作者:前端小智 Fundebug经授权转载,版权归原作者...

  • 2019-01-17

    JS常用正则表达式和JS控制输入框输入限制(数字|汉字|字符) 验证数字:^[0-9]*$ 验证n位的数字:^\d...

  • 正则表达式与方法

    正则表达式---常用符号 正则表达式--常用函数 正则表达式--常用技巧 代码: 正则表达式的应用举例 1、使用f...

网友评论

    本文标题:常用 js 正则表达式

    本文链接:https://www.haomeiwen.com/subject/ymwohjtx.html