美文网首页前端开发那些事儿
梳理正则常用知识点

梳理正则常用知识点

作者: 深度剖析JavaScript | 来源:发表于2020-08-21 10:55 被阅读0次

正则表达式是用于匹配特殊字符和特殊搭配的字符串的强大工具

正则的两种创建方式

  1. 字面量
    格式:/pattern/attributes
var reg = /abc/g //表示全局匹配abc字符串
  1. 通过new RegExp创建
    格式:new RegExp(pattern,attributes)
var  reg = new RegExp('abc','g')

说明:
pattern表示正则表达式的模式,即要匹配的规则
attributes是一个可选参数,包括 g i m,分别别表示全局匹配,忽略大小写和多行匹配。默认情况是非全局匹配、不忽略大小写和单行匹配
返回值是一个具有指定模式也标志的RegExp对象,typeof reg 为object
当pattern为不合法正则或者attributes包含gim以外的字符时,会报错syntaxError

下面具体来看一些规则
1. [] 用于查找某个范围内的一个字符
例如:
[abc] 表示查找abc中的任意一个字符
[^abc] 表示查找不是a不是b也不是b的任意一个字符;^在[]里表示非
[0-9] 表示查找从0到9的任意数字,-表示到或至的意思
[a-z] 表示查找a到z的字符
[A-Z] 表示查找A到Z的字符
[A-z] 表示查找A到z的字符

2. 元字符 表示拥有特殊含义的一个字符
例如:
. 表示任意一个字符,除换行;可用\.表示"."这一个字符
\w 表示单词字符
\W表示非单词字符
\d 表示数字字符
\D 表示非数字字符
\s 表示查找空白字符
\S 表示查找非空白字符
\n 换行
\r 回车符
\t 制表符
\uxxxx 表示十六进制的数xxxx所对应的Unicode字符

3. () 用于表示某组正则规则,可以作为整体被修饰,也可以供后续调用
小括号括起来的这部份正则表达式可以被当作一个“组”。这个组可以作为整体被后面的修饰,也可在后续处理中单独获得这一部分正则的匹配结果。小括号将其作为一个组,同时记下了匹配的结果。正则表达式 \n表示“第N个组”的结果,因为一个正则表达式中可能有多个小括号扩起的组,所以用 \1 \2 \3 等来分别代表之前的第1组第2组第3组。

4. 量词 表示字符出现的数量
+ 表示一个到多个
* 表示0个到多个
? 表示存0个或1个
{x} 表示出现x个的字符串
{x,y} 表示x个到y个的字符串
{x,} 表示x个到infinity个的字符串
$ 表示以什么结尾的字符串,比如/n$/表示以n结尾的字符串
^ 表示以什么开头的字符串,比如/^n/表示以字母n开头的字符串
?= 表示后面紧接某字符串的字符串,比如/?=n/表示后面紧接字母n的字符串
?! 表示后面不紧接某字符串的字符串,比如/?!n/匹配后面不紧接n的字符串
| 表示或者,例如(x|y) 匹配x或者y

5. 正则对象常用方法

  • compile() 编译和改变正则
  • test() 用于检测某字符串是否包含正则表达式所表示的字符串。返回true或false
  • exec() 检测某字符串是否包含正则表达式所表示的字符串,返回一个对象,这个对象记录了找到的值和第一次出现的位置 index下标

6. 包装类字符串对象身上的常用方法(与正则相关的)

  • 在replace() 中使用正则
    表示替换字符串中通过正则匹配的子串
var str = "Visit Microsoft!";
var res = str.replace(/microsoft/i, "W3School"); 
//res 的结果将是:Visit W3School!
  • search 查找字符串中与正则相匹配的子字符串在字符串中的索引位置,没有匹配到返回-1
  • match 用于返回与正则相匹配的子串,返回子串组成的类数组

相关文章

  • 梳理正则常用知识点

    正则表达式是用于匹配特殊字符和特殊搭配的字符串的强大工具 正则的两种创建方式 字面量格式:/pattern/att...

  • js 正则表达式

    做了几个练习以后,发现对正则的掌握并不牢固。梳理下常用的基础知识。 先附上经常用到的正则表达式的链接,供以后参考 ...

  • 正则表达式---常用表达式

    正则表达式常用表达式 正则知识点 正则表达式在Python中的应用 match() 方法match只能匹配以某个字...

  • 在buffer和字符串中正则搜索和替换的多种方式集锦

    正则表达式是处理文本数据的瑞士军刀,平时在elisp编程中会经常用到,下面梳理一下正则表达式在文本搜索和替换时常用...

  • React Navigation 5.x(二)嵌套路由动态配置标

    接上篇React Navigation 5.x(一)常用知识点梳理[https://www.jianshu.com...

  • Numpy基础学习笔记梳理

    前言 重新梳理numpy知识点。整理几个常用的函数。主要参考DataCamp的numpy cheat sheet。...

  • 正则大全

    我们在开发中经常会用到正则匹配,但是里面内容庞大实在难以记清,今天我们就来梳理一下正则知识,并在最后送上一些经常用...

  • 正则表达式手册

    前言 正则在实际中太多时候用到了,但还没有系统梳理过,这周学了一些正则参考实际经常用到的写一个简单的手册。 基础 ...

  • 正则表达式与方法

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

  • 2022-01-06

    常用正则

网友评论

    本文标题:梳理正则常用知识点

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