正则表达式匹配:常用的匹配正则表达式和实例.htm来源: 发布时间:星期四, 2009年2月12日 浏览:244次 评论:0
匹配中文正则表达式: [u4e00-u9fa5] 匹配双字节(包括汉字在内):[^x00-xff] 应用:计算串长度(个双字节长度计2ASCII计1) String.prototype.len=function{ this.replace([^x00-xff]/g,\"aa\").length;} 匹配空行正则表达式:[s| ]* 匹配HTML标记正则表达式:/<(.*)>.*</1>|<(.*) />/ 匹配首尾空格正则表达式:(^s*)|(s*$) 应用:javascript中没有像vbscript那样trim我们就可以利用这个表达式来实现如下: String.prototype.trim = function { this.replace(/(^s*)|(s*$)/g, \"\"); } 利用正则表达式分解和转换IP地址: 下面是利用正则表达式匹配IP地址并将IP地址转换成对应数值Javascript: function IP2V(ip) { re=/(d+).(d+).(d+).(d+)/g //匹配IP地址正则表达式 (re.test(ip)) { RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1 } { throw Error(\"Not a valid IP address!\") } } 不过上面如果不用正则表达式而直接用split来分解可能更简单如下: var ip=\"10.100.20.168\" ip=ip.split(\".\") alert(\"IP值是:\"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1)) 匹配Email地址正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 匹配网址URL正则表达式:http://([/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)? 利用正则表达式去除字串中重复算法:[注:此不正确原因见本贴回复] var s=\"abacabefgeeii\" var s1=s.replace(/(.).*1/g,\"$1\") var re= RegExp(\"[\"+s1+\"]\",\"g\") var s2=s.replace(re,\"\") alert(s1+s2) //结果为:abcefgi 这个思路方法对于顺序有要求串可能不适用 得用正则表达式从URL地址中提取文件名javascript如下结果为page1 s=\"http://www.9499.net/page1.htm\" s=s.replace(/(.*/){0,}([^.]+).*/ig,\"$2\") alert(s) 利用正则表达式限制网页表单里文本框输入内容: 用正则表达式限制只能输入中文:onkeyup=\"value=value.replace(/[^u4E00-u9FA5]/g,´´)\" _disibledevent=> 用正则表达式限制只能输入全角: _disibledevent=> 用正则表达式限制只能输入数字:onkeyup=\"value=value.replace(/[^d]/g,´´) \"onbeforepaste=\"clipboardData.Data(´text´,clipboardData.getData(´text´).replace(/[^d]/g,´´))\" 用正则表达式限制只能输入数字和英文:onkeyup=\"value=value.replace(/[W]/g,´´) \"onbeforepaste=\"clipboardData.Data(´text´,clipboardData.getData(´text´).replace(/[^d]/g,´´))\" posted on 2004-11-17 09:57 阳光家园 阅读(844) 评论(1) 编辑 报警 评论 # re: 常用匹配正则表达式和例子 esadwaewaewades 2004-11-20 15:10 | gttygghytyggtttggggtggggggghghg 标题 请输入标题 姓名 请输入你姓名 主页 内容 请输入评论内容 Remember Me? 登录 使用高级评论 Top [使用Ctrl+Enter键可以直接提交] 版权声明:天极是本Blog托管服务提供商如本文牵涉版权问题天极不承担相关责任请版权拥有者直接和文章作者联系解决 Powered by: Copyright © 阳光家园 0
相关文章读者评论发表评论 |
|