正则表达之复杂模式2
来源:易贤网 阅读:897 次 日期:2014-08-15 17:19:50
温馨提示:易贤网小编为您整理了“正则表达之复杂模式2”,方便广大网友查阅!

继续前一篇的正则表达之复杂模式

4.非捕获性分组

上次说道反向引用分组,我们称其为捕获性分组.还有一种是非捕获性分组,就是不存储分组结果,这样运算起来很快.非捕获性分组在左(前面一个)括号的后面加上?:即可.

举例说明

第一个是捕获性分组

var foraspcn_str = "#abcd";

var re = /#(\w{2})/g;

re.test(foraspcn_str);

alert(RegExp.$1);返回ab

比较非捕获性分组

var foraspcn_str = "#abcd";

var re = /#(?:\w{2})/g;

re.test(foraspcn_str);

alert(RegExp.$1);则返回空.

5前瞻,分为正向前瞻和负向前瞻

前瞻,当某个特定的字符分组出现在另一个字符串之前,才去捕获它.

正向其中南站模式是放在(?=和)之间,正像前瞻检查的是接下来出现的是不是某个特定的字符集.

举例:

var str1 = "badroom";

var str2 = "badding";

var re = /(bad(?=room))/g;

alert(re.test(str1));//输出ture

alert(RegExp.$1);//输出bad

alert(re.test(str2));//输出false

负向前瞻是检查不应该出现的特定字符串,是将模式放在(?!和)之间.

var str1 = "badroom";

var str2 = "badding";

var re = /(bad(?=room))/g;

alert(re.test(str1));//输出false

alert(re.test(str2));//输出ture

alert(RegExp.$1);//输出bad

6边界用于正则表达式中标识模式的位置

边界表

边界 描述

^    行开头

$    行结尾

\b   单词的边界

\B   非单词的边界

举例:

var str = "this site is http://www.ynpxrz.com.";

var re1 = /(\w+)\.$/;

var re2 = /^(\w+)/;

var re3 = /^(.+?)\b/;

var re4 = /\b(\S+?)\b/;

re1.test(str);

alert(RegExp.$1);//输出cn

re2.test(str);

alert(RegExp.$1);//输出this

var array1 = re3.match(str);

var array2 = re4.match(str);

7.多行模式,急当字符串中有换行符\n,只要在表达式后面加上一个m选项.

第六个和第七个不是很了解......

更多信息请查看IT技术专栏

更多信息请查看脚本栏目
上一篇:Dom样式编程
易贤网手机网站地址:正则表达之复杂模式2
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:易贤网
云南网警报警专用图标