美文网首页
正则表达式

正则表达式

作者: 雨棚 | 来源:发表于2017-06-07 13:55 被阅读0次
javascript中的reg语法
var reg = /\bis\b/g;
var reg = new Reg( '\\bis\\b' , 'g')
//g代表global,即全文匹配

修饰符

g:global,即全文匹配
i:ignore case 忽略大小写,默认为大小写敏感
m:多行搜索,//在每一行^和$算不算

s:source:正则表达式本身(/\w/的source为\w)
l:lastIndex:下一次搜索的开始位置(在非全局调用情况下无效)
(当前匹配结果,的最后一个字符,的下一个字符)
如果没有配置g属性,多次调用查询时 ,每次查询的开头位置


元字符

原义字符:字符本身的意义
元字符:在正则表达式中有特殊意义的非字母字符

\t:水平制表符(tab键)


[ ],构建简单的类
[abc]表示将字母abc归为一类,可以匹配这些字符中的任意一个
反向类:[^abc]指不是abc的任意内容
范围类:
[a-z]指a到z的任意一个字符(闭区间,包含a和z)
[a-zA-Z],连写,匹配所有字母,
注意:如果想匹配-,在后面加-,[a-zA-Z-]

预定义类

. === [^\r\n]:除了回车符和换行符以外的所有字符
\d === [0-9]:数字
\D === [^0-9]
\s === 空白符
\S
\w === [a-zA-Z_0-9]单词字符(数字字母下划线)
\W

边界字符

^ 以xxx开始
$ 以xxx结束
\b 单词边界
\B 非单词边界

量词

?出现0次或者一次
+出现一次或者多次
*出现任意次
{n}出现n次
{n,m}出现n-m次
{n,}至少出现n次
{0,n}最多n次

贪婪模式
'123456789'.replace(/\d{3,6}/g,'K')//正则表达式会尽量多的匹配,直到匹配失败
非贪婪模式
'123456789'.replace(/\d{3,6}?/g,'K')//量词后面加?启用非贪婪模式
分组
(Byron){3}//Byron连续出现三次
Byron{3}//职能匹配到n连续出现三次 

|

abcdefg(hig|klm)opqrst//pi
反向引用
907E5FEE-44C7-4A4B-8820-444F55BDA599.png
忽略分组
4DFDFF1F-9720-4846-A939-FBD2A07C17EC.png

前瞻

exp(?=assert)

\w(?=\d)\    //'a2*3'匹配a,因为a前面是个数字,符合前瞻
37FEB2DA-0CF3-441A-BD4D-693A8651FB6E.png

reg.exec()方法

返回一个数组,[lastIndex, 匹配字符串,第一组匹配,第二组匹配...]
该数组还带两个对象属性
index声明匹配文本起始字符的位置
input存放被检索的字符串


字符串方法

String.protatype.search(reg或字符串)
查不到返回-1,查到返回1

String.protatype.match(reg或字符串)
非全局调用:
返回数组对象(与exec相同)
该数组还带两个对象属性
index声明匹配文本起始字符的位置
input声明对stringObject的引用
全局调用:
返回数组:为所有匹配的子字符串
没有index和input属性

String.protatype.split(reg或字符串)

String.protatype.replace(reg,string或function)
若为function(每次匹配的时候调用一次),参数
function(匹配字符串,分组内容(无则没有),匹配项在字符串中的index, 原字符串)
return替换内容

相关文章

  • Linux命令行与Shell脚本编程大全-shell正则表达式

    本章内容: 定义正则表达式 了解基本正则表达式 扩展正则表达式 创建正则表达式 定义正则表达式 正则表达式是你定义...

  • 正则相关

    正则表达式基本语法 正则表达式常见字符 正则表达式特殊字符 正则表达式数量词 正则表达式边界匹配 正则表达式逻辑或...

  • 正则表达式系列-1

    正则表达式系列-1正则表达式系列-2正则表达式系列-3正则表达式系列-4 什么是正则表达式 正则表达式就是用事先定...

  • 正则表达式

    正则表达式 - 教程正则表达式 - 简介正则表达式 - 语法正则表达式 - 元字符正则表达式 - 运算符优先级正则...

  • Python基础入门 - 正则表达式与综合实战

    1. 初识正则表达式 1.1 介绍 步骤介绍正则表达式入门及应用正则表达式的进阶正则表达式案例 1.2 正则表达式...

  • Java正则表达式参考

    Java正则表达式入门 java正则表达式应用 深入浅出之正则表达式(一) 深入浅出之正则表达式(二) 正则表达式...

  • 正则表达式

    正则表达式 正则表达式就是记录文本规则的代码 正则表达式常用的元字符 正则表达式常用的限定符 正则表达式举例:这里...

  • Python爬虫(十)_正则表达式

    本篇将介绍python正则表达式,更多内容请参考:【python正则表达式】 什么是正则表达式 正则表达式,又称规...

  • python正则表达式

    本篇将介绍python正则表达式,更多内容请参考:【python正则表达式】 什么是正则表达式 正则表达式,又称规...

  • 正则表达式

    了解正则表达式基本语法 能够使用JavaScript的正则对象 正则表达式简介 什么是正则表达式 正则表达式:用于...

网友评论

      本文标题:正则表达式

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