常用的几个正则表达式的写法
常用的几个正则表达式的写法: 1. 去掉获取的字符串信息前后的空格用空字符串替换: 可以利用一个JavaScript函数实现: function trim(str){ return str.replace(/(^s*)|(s*$)/g,""); } var cookie = " this is a cookie value "; cookie = cookie.replace(/^s+|s+$/g,''); 结果为 cookie 变成 "this is a cookie value"。前后空格全部去掉了。 另外: ^表示字符串必须以后面的规则开头,在这里就是说字符串必须以s*开头. s 是空格的意思,* 表示有0个或多个 s* 就是有0个或多个空格 (^s*) 表示的就是以0个空格或者多个空格开头 | 表示或的意思,也就是满足| 左边的也成立,满足 | 右面的也成立. s*前面说过了 $ 的意思是字符串必须以前面的规则结尾 (s*$) 的意思就是,以0个空格或者多个空格结尾 /.../g 是正则表达式的属性,表示全文匹配,而不是找到一个就停止. 所以这个正则表达式替换的就是前导空格和后导空格 因为有前导空格,就说明以0个或多个空格开头,满足正则表达式中 | 前面的条件: (^s*) 而如果有后导空格,就说明以0个或多个空格结尾,满足正则表达式中 | 后面的条件: (s*$) 2. 正则表达式对手机号码的校验: 正则表达式对手机号的验证^[1][3-8]+d{9} ^[1][3-8]d{9}$ ^首字母 [1]必须是1,方格可以去掉吧。。 [3-8]第二个数字为3-8之间 +加表示至少一个[3-8] d表示数字 {9}表示9个,就是9个数字。 3. 正则表达式如何验证邮箱 ^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$ 或者 ^[a-z0-9_-]+(.[_a-z0-9-]+)*@([_a-z0-9-]+.)+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)$ 4. 验证日期格式的正则表达式,形如 2013-07-12 /^(19|20)d{2}-(0?d|1[012])-(0?d|[12]d|3[01])$/; 这个是1900-2099,简单验证1-12月,1-31日,对于2月30这样的不管。如果都验证,这个正则表达式会很长,你看懂这个自己就会改了。例如: <html> <body> <script language="javascript"> <!-- function test() { var pattern=/^(19|20)d{2}-(0?d|1[012])-(0?d|[12]d|3[01])$/; var str=document.getElementById("str").value; if(pattern.test(str)){alert("True!");} else{alert("False!");} } --> </script> <input type="text" id="str"> <input type="button" value="Test" onclick="test()"> </body> </html> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |