Android程序员学WEB前端(12)-JavaScript(3)-正则表达式-Sublime
2017-09-25 17:11
971 查看
转载请注明出处:http://blog.csdn.net/iwanghang
觉得博文有用,请点赞,请评论,请关注,谢谢!~
转载请注明出处:http://blog.csdn.net/iwanghang
欢迎移动开发爱好者交流
沈阳或周边城市公司有意开发Android,请与我联系
联系方式
![](http://img.blog.csdn.net/20161116143246150)
微信:iwanghang
QQ:413711276
邮箱:iwanghang@qq.com
觉得博文有用,请点赞,请评论,请关注,谢谢!~
觉得博文有用,请点赞,请评论,请关注,谢谢!~
index1-正则表达式:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index1-正则表达式</title> <script type="text/javascript"> var qq = "1234567890123"; // 验证QQ号码是否合法 var reg = new RegExp(/^[1-9][0-9]{4,12}$/); // 首位数字1-9,其他位数字0-9,长度4-13 alert(reg.test(qq)); // 打印结果:true 或者 false </script> </head> <body> </body> </html>
index2-RegExp-test-exec:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index2-RegExp-test-exec</title> <script type="text/javascript"> var str = "hello world"; // 验证字符串是否含有hello var reg2 = new RegExp("hello"); alert(reg2.test(str)); // 打印结果:true 或者 false // 验证字符串是否含有hello var reg3 = /hello/; alert(reg3.test(str)); // 打印结果:true 或者 false // test 和 exec 的区别 alert(reg2.exec(str)); // 打印结果:hello 或者 null var str2 = "Hello world"; // reg2,reg3,对于大小写有严格要求,所以使用 test 和 exec,返回结果为 false 或者 null alert(reg2.exec(str2)); // 打印结果:hello 或者 null /** i 执行对大小写不敏感的匹配。 g 执行全局匹配 **/ var reg4 = /hello/i; // 加i,表示不区分大小写 alert(reg4.exec(str2)); // 打印结果:Hello var reg5 = new RegExp("hello", "i"); // 同上 alert(reg5.exec(str2)); // 打印结果:Hello </script> </head> <body> </body> </html>
index3-String:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index3-String</title> <script type="text/javascript"> /* match() 检索(查找) */ var reg = /hello/i; var reg2 = /hello/ig; // ig全局匹配 var str = "Hello World ~ Hello Future"; var str2 = "Hello World ~ Hello Future"; alert(str.match(reg)); // 打印结果:Hello alert(str.match(reg2)); // 打印结果:Hello,Hello /* search() 查找位置 */ alert(str.search(reg)); // 打印结果:0 alert(str.search(reg2)); // 打印结果:0 /* replace() 替换 */ alert(str.replace(reg, "hi`")); // 打印结果:hi` World ~ Hello Future alert(str2.replace(reg2, "hi`")); // 打印结果:hi` World ~ hi` Future /* split() 分割 */ alert(str.split(reg).length); // 打印结果:3 alert(str.split(reg)); // 打印结果(3个元素):, World ~ , Future alert(str.split("~")); // 打印结果(2个元素):Hello World , Hello Future </script> </head> <body> </body> </html>
index4-字符集:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index4-字符集</title> <script type="text/javascript"> // . 代表任意字符,换行除外 var reg = /b..k/; var str = "books"; alert(reg.test(str)); // 打印结果:true // ? 出现0次或者1次 // * 出现0次或者多次 // + 出现1次或者多次 var reg2 = /bo*k/; var str2 = "books"; alert(reg2.test(str2)); // 打印结果:true // {m,n} 至少出现m次,最多出现n次 var reg3 = /bo{2,6}k/; var str3 = "booooooks"; alert(reg3.test(str3)); // 打印结果:true // [] 限定某一位上字符的取值范围 var reg4 = /[a-z]ook/; var str4 = "books"; alert(reg4.test(str4)); // 打印结果:true var reg5 = /[a-zA-Z0-9]ook/; var str5 = "!ooks"; alert(reg5.test(str5)); // 打印结果:false // [^] 限定某一位上字符不能取的值 var reg6 = /[^0-9]ook/; var str6 = "5ooks"; alert(reg6.test(str6)); // 打印结果:false /* 等价值: \d 等价于[0-9] \D 等价于[^0-9] \w 等价于[a-zA-Z0-9_] \W 等价于[^a-zA-Z0-9_] */ var reg7 = /book/; var str7 = "wer book wer"; alert(reg7.test(str7)); // 打印结果:true var reg8 = /^book/; // 限定book开头 /^/匹配行首 var str8 = "wer book wer"; var str8_2 = "book wer"; alert(reg8.test(str8)); // 打印结果:false alert(reg8.test(str8_2)); // 打印结果:true var reg9 = /^book$/; // 限定book开头和结尾 var str9 = "wer book wer"; alert(reg9.test(str9)); // 打印结果:false </script> </head> <body> </body> </html>
index5-字符匹配:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index5-字符匹配</title> <script type="text/javascript"> // \s 匹配空白字符、空格、制表符和换行符 var reg = /javascript/; var str = "study java script"; alert(reg.test(str)); // 打印结果:false var reg2 = /java\sscript/; var str2 = "study java script"; alert(reg2.test(str2)); // 打印结果:true // | 或者 var reg3 = /java|script/; var str3 = "study java"; alert(reg3.test(str3)); // 打印结果:true // {min,max} 出现次数限制 var reg4 = /java{2,4}/; var str4 = "study javaa script"; alert(reg4.test(str4)); // 打印结果:true // (){min,max} 分组出现次数限制 var reg5 = /(java){2,4}/; var str5 = "study javajava script"; alert(reg5.test(str5)); // 打印结果:true alert(RegExp.$1); // 取第一组的值 打印结果:java var reg6 = /(.*)\s(.*)/; // .* 任意字符 , 整理意思为 任意字符\s任意字符 var str6 = "study js"; //alert(reg6.test(str6)); // 打印结果:true // 交换空格前后元素 alert(str6.replace(reg6,'$2 $1')); // 打印结果:js study // 贪婪 :+ * ? {m,n} {m,} {m} // 惰性 :+? *? ?? {m,n}? {m,}? {m}? var reg7 = /6(.*)6/; var str7 = "study 6js6 6js6 6js6"; alert(str7.replace(reg7,'$1')); // 打印结果:study js6 6js6 6js var reg8 = /6(.*?)6/; var str8 = "study 6js6 6js6 6js6"; alert(str8.replace(reg8,'$1')); // 打印结果:study js 6js6 6js6 var reg9 = /6(.*?)6/g; var str9 = "study 6js6 6js6 6js6"; alert(str9.replace(reg9,'$1')); // 打印结果:study js js js </script> </head> <body> </body> </html>
index6-exec:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index6-exec</title> <script type="text/javascript"> var reg = /[a-z]+\s\d{4}/; // 任意字母开头+四位数字 var str = "hello 1234"; alert(reg.exec(str)); // 打印结果:hello 1234 (返回匹配的字符串) // 捕获型分组 var reg2 = /([a-z]+)\s(\d{4})/; var str2 = "hello 4567"; alert(reg2.exec(str2)); // 打印结果:hello 4567,hello,4567 // 数组中第一个数据是匹配整个正则表达式的字符串 // 数组中第二个数据是第一个分组中的字符串 // 数组中第三个数据是第二个分组中的字符串 // 非捕获型分组 var reg3 = /([a-z]+)\s(?:\d{4})/; var str3 = "hello 4567"; alert(reg3.exec(str3)); // 打印结果:hello 4567,hello // 加上 ?: 表示不想捕获 // 前瞻捕获 var reg4 = /goo(?=gle)/; var str4 = "google"; alert(reg4.exec(str4)); // 打印结果:goo var reg5 = /[a-z]+(?=gle)/; var str5 = "google"; alert(reg5.exec(str5)); // 打印结果:goo // 换行模式 var reg6 = /^\d+/gm; var str6 = "1.baidu\n2.google\n3.js"; alert(str6.replace(reg6,"#")); /* 打印结果: #.baidu #.google #.js */ </script> </head> <body> </body> </html>
index7-常用验证规则:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>index7-常用验证规则</title> <script type="text/javascript"> // 验证手机号 var reg = /^1[3578]\d{9}/; var phone = "13800138000"; alert(reg.test(phone)); // 打印结果:true // 隐藏中间4位 var reg2 = /(\d{3})\d{4}(\d{4})/; var phone2 = "13800138000"; alert(phone2.replace(reg2,'$1****$2')); // 打印结果:138****8000 // 验证是否为压缩包 var reg_file = /\w+\.rar|zip|gz/; var file = "test.rar" alert(reg_file.test(file)); // 打印结果:true // 验证邮箱 var reg_email = /[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9_\.\-]+\.[a-zA-Z]+$/; var email = "iwanghang@lpjyc.com"; alert(reg_email.test(email)); // 打印结果:true </script> </head> <body> </body> </html>
转载请注明出处:http://blog.csdn.net/iwanghang
欢迎移动开发爱好者交流
沈阳或周边城市公司有意开发Android,请与我联系
联系方式
微信:iwanghang
QQ:413711276
邮箱:iwanghang@qq.com
觉得博文有用,请点赞,请评论,请关注,谢谢!~
相关文章推荐
- Android程序员学WEB前端(10)-JavaScript(1)-基础-Sublime
- Android程序员学WEB前端(11)-JavaScript(2)-函数-Sublime
- Android程序员学WEB前端(13)-JavaScript(4)-Bom-Sublime
- web前端、JavaScript常用的几个正则表达式
- Android程序员学WEB前端(1)-HTML(1)-标准结构常用标签-Sublime
- Android程序员学WEB前端(3)-HTML(3)-表单嵌套-Sublime
- web前端之JavaScript正则表达式
- Android程序员学WEB前端(4)-HTML(4)-注册页面-Sublime
- Android程序员学WEB前端(5)-HTML(5)-框架集-Sublime
- web前端之JavaScript正则表达式
- Android程序员学WEB前端(6)-CSS(1)-选择器-Sublime
- Android程序员学WEB前端(2)-HTML(2)-锚点链接列表表单-Sublime
- Android程序员学WEB前端(7)-CSS(2)-伪类字体文本背景边框-Sublime
- Android程序员学WEB前端(8)-CSS(3)-盒子内联块级定位浮动-Sublime
- Android程序员学WEB前端(9)-CSS(4)-商城首页Demo-Sublime
- WEB前端 | JS基础——(12)正则表达式
- web前端之JavaScript高级程序设计四:函数表达式
- Web前端程序员推荐7个实用的JavaScript工具
- 【前端学习笔记】Javascript中的正则表达式-实例
- Web前端_邮箱的正则表达式