PHP一些常用的正则表达式字符的一些转换


Posted in PHP onJuly 29, 2008

匹配双字节字符(包括汉字在内): [^\x00-\xff] 

应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 

String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} 

匹配空行的正则表达式: \n[\s| ]*\r 

匹配HTML标记的正则表达式: /<(.*)>.*<\/>|<(.*) \/>/ 

匹配首尾空格的正则表达式: (^\s*)|(\s*$) 

应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下: 

String.prototype.trim = function() { 
return this.replace(/(^\s*)|(\s*$)/g, ""); 

利用正则表达式分解和转换IP地址:

下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的javascript程序: 

function IP2V(ip) { 
re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式 
if(re.test(ip)) { 
return RegExp.*Math.pow(255,3))+RegExp.*Math.pow(255,2))+RegExp.*255+RegExp.*1

else { 
throw new 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(/(.).*/g,"") 
var re=new 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(/(.*\/)([^\.]+).*/ig,"") 
alert(s) 

利用正则表达式限制网页表单里的文本框输入内容: 

用正则表达式限制只能输入中文:

onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" 

用正则表达式限制只能输入全角字符:

onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))" 

用正则表达式限制只能输入数字:

onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 

用正则表达式限制只能输入数字和英文:

onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,'')) 

PHP 相关文章推荐
PHP网上调查系统
Oct 09 PHP
php 读取shell管道传输过来的内容
Mar 01 PHP
PHP 强制下载文件代码
Oct 24 PHP
php输出表格的实现代码(修正版)
Dec 29 PHP
php浏览历史记录的方法
Mar 10 PHP
php文件读取方法实例分析
Jun 20 PHP
PHP获取某个月最大天数(最后一天)的方法
Jul 29 PHP
[原创]ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法
Oct 10 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
Oct 07 PHP
Laravel中的Blade模板引擎示例详解
Oct 10 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
Apr 04 PHP
php+js实现的无刷新下载文件功能示例
Aug 23 PHP
php 全文搜索和替换的实现代码
Jul 29 #PHP
PHP中$_SERVER的详细参数与说明
Jul 29 #PHP
php include的妙用,实现路径加密
Jul 29 #PHP
php5编程中的异常处理详细方法介绍
Jul 29 #PHP
php intval的测试代码发现问题
Jul 27 #PHP
php在线打包程序源码
Jul 27 #PHP
php对gzip文件或者字符串解压实例参考
Jul 25 #PHP
You might like
一个简单的域名注册情况查询程序
2006/10/09 PHP
用PHP读取RSS feed的代码
2008/08/01 PHP
使用PHP实现密保卡功能实现代码&amp;lt;打包下载直接运行&amp;gt;
2011/10/09 PHP
php中++i 与 i++ 的区别
2012/08/08 PHP
百度站点地图(百度sitemap)生成方法分享
2014/01/09 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
javascript prototype原型操作笔记
2009/12/07 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
jquery实现文本框数量加减功能的例子分享
2014/05/10 Javascript
学习JavaScript设计模式之迭代器模式
2016/01/19 Javascript
Svg.js实例教程及使用手册详解(一)
2016/05/16 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
Bootstrap复选框和单选按钮美化插件(推荐)
2016/11/23 Javascript
JS中的phototype详解
2017/02/04 Javascript
微信小程序 弹框和模态框实现代码
2017/03/10 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
2017/08/08 jQuery
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
2020/04/13 Javascript
Python简单格式化时间的方法【strftime函数】
2016/09/18 Python
python数据清洗系列之字符串处理详解
2017/02/12 Python
python复制文件到指定目录的实例
2018/04/27 Python
利用python提取wav文件的mfcc方法
2019/01/09 Python
获取Pytorch中间某一层权重或者特征的例子
2019/08/17 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
python-docx文件定位读取过程(尝试替换)
2020/02/13 Python
HTML5 的新的表单元素(datalist/keygen/output)使用介绍
2013/07/19 HTML / CSS
西班牙香水和化妆品网上商店:Douglas
2017/10/29 全球购物
linux系统都有哪些运行级别
2012/04/15 面试题
How to spawning asynchronous work in J2EE
2016/08/29 面试题
秋季运动会活动方案
2014/02/05 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
财务管理专业毕业生求职信
2014/06/02 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
民事答辩状格式范文
2015/05/21 职场文书
Django 如何实现文件上传下载
2021/04/08 Python
golang用type-switch判断interface的实际存储类型
2022/04/14 Golang