其他分享
首页 > 其他分享> > 正则

正则

作者:互联网

正则表达式

概念:

一个用于规范字符串的表达式。
简单来说,就是写一个规则,然后通过这个规则可以从一个杂乱的字符串中找出符合规则的部分,也就可以用于判断
一个字符串是否符合某个规则。还可以将一个字符串中符合规则的部分进行替换。

初体验:

正则表达式其实就是一种规则,其实把正则称作规则表达式更为恰当。正则的语法基于一种古老的perl语言。

正则表达式的作用

1. 提取字符串:从指定的字符串中将符合规则部分提取出来
2. 匹配正则:判断一个字符串是否跟指定的规则匹配
3. 替换字符串:将一个字符串中跟规则匹配的部分替换掉

正则表达式的创建

语法: /正则表达式主体/修饰符(可选)
var reg = new RegExp() // 构造函数方式
var reg = /hello/i; // 字面量方式

使用说明:正则表达式比较特殊,不是字符串,不用加引号,但是要有定界符,两边都是斜杠。在斜杠后面可以加一些特定的修饰符。

修饰符

g 全局搜索

i 不区分大小写

m 换行模式

正则表达式的组成

普通字符

元字符

\d 匹配数字
\D 匹配任意非数字的字符
\w 匹配字母或数字或下划线
\W 匹配任意不是字母,数字,下划线
\s 匹配任意的空白符
\S 匹配任意不是空白符的字符
. 匹配除换行符以外的任意单个字符
^ 表示匹配行首的文本(以谁开始)
$ 表示匹配行尾的文本(以谁结束)

限定符

{n} 表示n个

{n,m} 表示n个到m个

{n,} 表示n个到无穷个

+ 表示一个到多个 {1,}
* 表示0个到多个 {0,}
? 表示0个到一个 {0,1}

特殊字符(元字符):正则表达式中有特殊意义的字符

转义 \
//匹配 ? * + .等元字符 转义\
var regx10 = /^[?]$/
console.log('?'.match(regx10));
var regx10 = /^[*]$/
console.log('*'.match(regx10));
//用转义字符来
var regx10 = /^\*$/
console.log('*'.match(regx10));
var regx10 = /^\.$/
console.log('.'.match(regx10));

正则的检测方法

test 测试 返回一个boolean类型值(是否匹配)
var regx = /\w/
console.log(regx.test('abc')) //true
exec 执行 返回给你一个对应的匹配的数组(如果有就返回一个数组)
var regx = /\d/
console.log(regx.exec('123')) //[1,2,3]

字符串支持正则的4个方法

标签:匹配,正则表达式,字符串,正则,regx10,var,console
来源: https://www.cnblogs.com/gujmnlk/p/16585933.html