您的位置:首页 > 其它

常用的、现成的!正则表达式及基础知识

2017-11-17 21:55 405 查看


一、正则表达式的概念

1.它是对字符串执行模式匹配的强大工具,用来把规则说给计算机听

2.由正则部分和正则属性组成:正则部分用来描述规则,正则属性用来设置

3.表达式:var reg = /正则部分pattern/正则属性attributes

二、创建正则的两种方法:

1.直接量/字面量

var reg = /pingzi/g;


2.对象的方法

var reg = new RegExp("pingzi","");


三、正则方法

search:检索与正则表达式相匹配的值

match:找到一个或多个正则表达式的匹配;通过match可以检测字符串里面是否包含某个规则的字符串(可以通过length)

//  /g 代表检测字符串内全部的
var str = "Hello everyone,I am pingzi.";
var reg = /pingzi/g;
console.log(str.match(reg));//pingzi


replace:替换与正则表达式匹配的子串;replace里面写正则,可以替换多个

var str = "Hello everyone,I am pingzi.";
var reg = /pingzi/g;
console.log(str.replace(reg,"myt"));//Hello everyone,I am myt.


四、元字符

. :查找单个字符,除了换行\n和行结束符

\w:查找单词字符;数字、大小写字母、下划线

\d:查找数字

\s:查找空白字符; \t 一个tab键的空格、\n换行符、 \r一个回车

\n:查找换行符

\b:匹配单词边界

关于匹配单词边界的正则也是需要解释一下的,具体看一下例子:
var str = "we are learning regexg now";
//regexp这个单词的
var reg1 = /\bregexg\b/g;
console.log(str.match(reg1));//regexp
//作为单词开头的reg
var reg2 = /\breg/g;
console.log(str.match(reg1));//reg
//作为单词结尾的exp
var reg3 = /exp\b/g;
console.log(str.match(reg3));//exp


\u:匹配汉字

关于用正则匹配汉字的方法,可能很多人去查手册的时候,都感觉手册上说的闪乎其次的,其实并没有那么高级。
只需要去网上找一个代码,写上就好了。
var str = "我是码丫头pingzi。";
var reg = /[\u4e00-\u9fa5]/g;
console.log(str.match(reg));//我是码丫头


五、方括号

[abc]:查找方括号之间的任何字符

[^abc]:查找任何不在方括号之间的字符

[0-9]:查找任何从0至9的数字

[a-z]:查找任何从小写a到小写z的字符

[A-Z]:查找任何从大写A到大写Z的字符

[A-z]:查找任何从大写A到小写z的字符

六、量词

n+:匹配任何包含至少1个n的字符串,一个或者多个

n*:匹配任何包含0个或多个n的字符串,任意个

n?:匹配任何包含0个或1个n的字符串

n{X}:匹配包含X个n的序列的字符串

n{X,Y}:匹配包含X或Y个n的序列的字符串

n$:匹配任何结尾为n的字符串

^n:匹配任何开头为n的字符串
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: