这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
这篇文章主要介绍了 JavaScript 常用正则函数用法, 结合实例形式分析了 JavaScript 正则函数 match、exec、test、search、replace、split 的功能与具体使用技巧, 需要的朋友可以参考下
本文实例讲述了 JavaScript 常用正则函数用法。分享给大家供大家参考,具体如下:
JavaScript 正则函数 match、exec、test、search、replace、split 使用。
* 属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。
1、match() 函数
match() 函数:如果未找到匹配,则返回值为 null;如果找到了匹配,则返回一个结果数组。
- function RegExpMatch() {
- var str = "http://www.phperz.com/jiaoben";
- var reg = /[j][\s\S]{3}/gi; // 注意g将全文匹配,不加将永远只返回第一个匹配
- var result = str.match(reg);
- alert(result); //返回:jb51,jiao
- }
2、exec() 函数
exec() 函数:如果未找到匹配,则返回值为 null;如果找到了匹配,则返回一个结果数组。
此数组的第 0 个元素是与正则表达式相匹配的文本,第 1 个元素与 RegExpObject 的第 1 个子表达式相匹配的文本(如果有的话),第 2 个元 素是与 RegExpObject 的第 2 个子表达式相匹配的文本(如果有的话),以 此类推。
- function RegExpExec() {
- var str = "1234-5678";
- var reg = /(\d{4})-(\d{4})/;
- var result = reg.exec(str);
- alert(result); //返回:1234-5678,1234,5678
- alert(result[1] + ' ' + result[2]); //1234 5678
- alert(RegExp.$1 + ' ' + RegExp.$2); //1234 5678
- }
3、test() 函数
test() 函数:返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。
- function RegExpTest() {
- var str = "http://www.phperz.com/jiaoben";
- var reg = /^http:\/\/([\w-]+\.)+[\w-]+(\/[\w-]*)?$|^([\w-]+\.)+[\w-]+(\/[\w-]*)?$/; //验证URL格式
- var result = false;
- if (reg.test(str)) {
- result = true;
- }
- alert(result); //true
- }
4、search () 函数
search () 函数:返回与正则表达式查找内容匹配的第一个子字符串的位置,如果未找到匹配,则返回值为 -1。
- function RegExpSearch() {
- var str = "http://www.phperz.com/jiaoben";
- var reg = /(jiaoben)/;
- var result = str.search(reg);
- alert(result); //20
- }
5、replace() 函数
replace() 函数:返回根据正则表达式进行文字替换后的字符串的复制。
- function RegExpReplace() {
- var str = "http://www.phperz.com/jiaoben";
- var reg = /^(http:\/\/www.phperz.com)\/([\w]*)$/;
- var result = str.replace(reg, "$1?userId=$2");
- alert(result); //http://www.phperz.com?userId=jiaoben
- }
6、split() 函数
split() 函数:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
- function RegExpSplit() {
- var str = "1@4@7@9";
- var reg = /@/;
- var result = str.split(reg);;
- alert(result); //[1,4,7,9]
- }
希望本文所述对大家 JavaScript 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0724/328171.html