美文网首页Web前端之路程序员
总结常用的正则表达式相关知识

总结常用的正则表达式相关知识

作者: 慕时_木雨凡 | 来源:发表于2019-04-04 20:06 被阅读25次

正则作为工作中的常用工具,下文对其进行归纳整理。

正则相关介绍

  • 正则表达式其实也是js里面的一个对象RegExp
  • 创建正则对象 new RegExp("a")
  • 创建正则对象(对象字面量) let reg = /xxx/
    • 其中//是标记,a表示要匹配的字符

正则表达式的匹配字符

  let reg = /a/  // 匹配字符串中的a字符
  let reg2 = /abc/ // 匹配字符串中的‘abc’
  reg2.test('ab1c') // false
  reg2.test("1abc")  //true
  reg2.test("abc123")    //true
  reg2.test("abcabc")    //true

正则表达式中特殊字符的意义和用法

  • . 表示除了换行符(\r \n)以外的任意字符
var reg = /./
reg.test('a') // true
reg.test('.') // true
reg.test('\r') // false
reg.test('12\r12') // true
reg.test(' ') // true
  • \d 表示数字
var reg = /\d/
reg.test('12a12') // true
reg.test('abc') // false
var reg2 = /\d\d/
reg.test('12) // true
reg.test('1c') // false
  • \D 是\d的取反结果,表示不是数字
var reg = /\D/
reg.test('123') // false
reg.test('12a12') // true
reg.test('abc') // true
var reg2 = /12\D4/
reg.test('1234') // false
reg.test('12a4') // true
  • \w 表示字母、数组、下划线。三者满足其一即可
var reg = /\w/
reg.test("a")  //true
reg.test("1")  //true
reg.test("_")  //true
reg.test(' ')  //false
reg.test('')   //false
  • \W 是\w的取反,除了字母、数组、下划线以外的任何字符
var reg = /\W/
reg.test("a")  //false
reg.test("1")  //false
reg.test("_")  //false
reg.test(' ')  //true
reg.test('')   //false
  • \s 表示一个空白字符(包括\r\n\t等空格)
var reg=/\s/;
reg.test("abc def")   //true
reg.test("abc\r123")  //true
reg.test("abc")       //false
  • \S 是\s的取反,表示除了空白字符以外的任何字符

  • \ 表示转义字符

var reg=/./;    //匹配除了换行符以外的任意字符
var reg=/\./;   //匹配.字符
var reg=/\//;   //匹配一个正斜杠:/
var reg=/\[\]/;   //匹配[]
  • [abc] 表示字符集合 匹配abc中的任何一个
var reg=/[1a2b3]/; //
reg.test("a")      //结果为:true
reg.test("3")      //结果为:true
reg.test("fg5678")  // false
reg.test("a999999")  // true
var reg2=/[123][abc]/
reg2.test("2a");    //true
reg2.test("3c");    //true
reg2.test("asdfasdf1c"); // true 
  • [^abc] 表示不能是abc中的任何一个

正则边界

  • ^ 表示字符串最左边
var reg=/^abc/;     //表示以abc开头
reg.test("123abc123");  // false
reg.test("abc123");     // true
  • $ 表示字符串最右边
var reg=/abc$/      //表示以abc结尾
reg.test("123abc")  // true
reg.test("abc123")  // false
var reg=/^abc$/      //表示匹配‘abc’(以abc开头并且以abc结尾)
reg.test("abc")  // true
reg.test("abc123")  // false

正则量词

  • * 出现0次或者多次
var reg=/\d*/  // 表示要0个或者多个数字
reg.test("123")  //true
reg.test("abc")  //true

var reg3=/1\d*/
reg3.test("123");   //true
reg3.test("a23")   //false
reg3.test("a1b");   //true
  • + 出现1次或者多次
  • 出现0次或者1次
  • {3} 出现3次
  • {3,} 至少出现3次
  • {3,5} 出现3到5次
  • | 或者
var reg=/abc|123/  //表示匹配abc或者123
  • () 分组
var reg=/(\d{3,4})-(\d{7,8})/  //true
reg.test('021-33335555')  // true
reg.test('a021-33335555w')  // true
reg.test('a01-33335555')  // false

正则表达式修饰符

  • /i 忽略大小写
  • /g 全文查找出现的所有匹配字符
  • /ig 全文查找、忽略大小写
  • /gi 全文查找、忽略大小写

相关文章

  • python正则学习

    一、常用的匹配规则总结表 原文链接 相关具体应用例子,请见:Python-正则表达式 二、re库中常用方法 相关具...

  • 总结常用的正则表达式相关知识

    正则作为工作中的常用工具,下文对其进行归纳整理。 正则相关介绍 正则表达式其实也是js里面的一个对象RegExp ...

  • iOS-正则表达式使用

    正则表达式与NSPredicate连用 正则表达式类 分组的使用 相关资料 常用正则表达式

  • 读书笔记--MotionEvent

    之前总结过一篇关于view的文章,本文更多的是总结了一些常用MotionEvent的相关知识。 MotionEve...

  • Python语言的12个基础知识点小结

    python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序、去重、字典排序、字典、列表...

  • 知识分享之正则表达式——常用的正则表达式汇总

    知识分享之正则表达式——常用的正则表达式汇总 背景 知识分享之正则表达式是对其日常在使用正则表达式过程中遇到的各类...

  • 实用的正则表达式

    文章来源:w3cSchool 包含正则表达式的知识和常用的经典Javascript正则表达式

  • Android WebView 全面干货指南

    前言 总结 Android WebView 常用的相关知识点,令包含以下干货内容分析:Js注入漏洞、WebView...

  • Android WebView 使用指南

    前言 总结 Android WebView 常用的相关知识点,令包含以下干货内容分析:Js注入漏洞、WebView...

  • 计算机视觉知识总结

    从本篇开始,总结下常用的图像处理相关的知识体系。由于计算机视觉知识体系非常庞大,这里只是从工程角度,总结下个人在工...

网友评论

    本文标题:总结常用的正则表达式相关知识

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