原生JavaScript---正则表达式

JavaScript 中正则的性能比想象中的低很多。能用字符串方法搞定的,尽量别用正则。------玉伯

抛开性能不谈,一起来看看正则表达式怎么用吧!

先看看JavaScript正则表达式中一些特殊字符的含义:

字符含义
^匹配以某些字符开头的字符串
$匹配以某些字符结尾的字符串
?匹配出现0次或1次的字符或字符串
*匹配出现0次或n次的字符或字符串
+匹配出现1次或n次的字符或字符串
{n}精确匹配出现n次的字符或字符串
{n,}匹配出现>=n次的字符或字符串
{n,m}匹配出现 >=n次  and  <=m次 的字符或字符串
.匹配除了换行符外的字符
[...]匹配括号里的任意字符
[^...]匹配除了括号里的字符外的任意字符
\b匹配一个单词的边界
\B匹配一个单词的非边界
\d匹配数字0-9
\D匹配任何非数字的字符
\w匹配 a-z  A-Z  0-9  _ 
\W匹配 非字母、非数字、非下划线
\n匹配换行符
\s匹配空格符
\S匹配非空格符
\t匹配Tab

字符含义
g全局匹配
m多行匹配
i忽略大小写

1.看是否匹配 test()

如果匹配返回true  不匹配则返回false

示例:

//<![CDATA[
var str="PrimitiveJavaScript is my JavaScript Special column.";
var pattern1=/Java/;
document.write(pattern1.test(str));
document.write("<br/>");
var pattern2=/java/;
document.write(pattern2.test(str));
//--><!]]>

结果:


2.返回匹配的值 exec()

示例:

//<![CDATA[
var str="PrimitiveJavaScript is my JavaScript Special column.";
var pattern=/JavaScript/;
document.write(pattern.exec(str));
//--><!]]>

结果:

JavaScript

3.返回匹配的数组 match()

示例:

//<![CDATA[
var str="PrimitiveJavaScript is my JavaScript Special column.";
var pattern=/JavaScript/g;  //全局匹配
var result=str.match(pattern);
document.write(result[0]);
document.write("<br/>");
document.write(result[1]);
//--><!]]>

结果:


掌握这三个方法,再加上字符串的知识,就可以处理各种各样的问题啦。

还是要多加练习,融会贯通。

就写到这了。

我的新浪微博:X--zhang

专栏地址:原生JavaScript

欢迎吐槽,欢迎拍砖!

文 / X--zhang

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值