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 5.3.0 安装分析心得
Aug 07 PHP
基于php-fpm 参数的深入理解
Jun 03 PHP
PHP使用Alexa API获取网站的Alexa排名例子
Jun 12 PHP
PHP模块memcached使用指南
Dec 08 PHP
php递归调用删除数组空值元素的方法
Apr 28 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
Oct 29 PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 PHP
php7安装mongoDB扩展的方法分析
Aug 02 PHP
Yii2框架控制器、路由、Url生成操作示例
May 27 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
Dec 04 PHP
php的lavarel框架中join和orWhere的用法
Dec 28 PHP
php png失真的原因及解决办法
Oct 24 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
php中全局变量global的使用演示代码
2011/05/18 PHP
基于php伪静态的实现详细介绍
2013/04/28 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
2014/11/20 PHP
php查找字符串出现次数的方法
2014/12/01 PHP
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
PHP框架Laravel的小技巧两则
2015/02/10 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
PHP解决高并发的优化方案实例
2020/12/10 PHP
nicejforms——美化表单不用愁
2007/02/20 Javascript
javascript的回调函数应用示例
2014/02/20 Javascript
node.js中使用socket.io制作命名空间
2014/12/15 Javascript
JS+DIV+CSS实现的经典标签切换效果代码
2015/09/14 Javascript
javascript中select下拉框的用法总结
2016/01/07 Javascript
原生js制作日历控件实例分享
2016/04/06 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
2018/03/07 Javascript
在 Vue 项目中引入 tinymce 富文本编辑器的完整代码
2018/05/04 Javascript
javascript用defineProperty实现简单的双向绑定方法
2020/04/03 Javascript
Express 配置HTML页面访问的实现
2020/11/01 Javascript
Jquery+javascript实现支付网页数字键盘
2020/12/21 jQuery
微信小程序实现点赞业务
2021/02/10 Javascript
Python获取单个程序CPU使用情况趋势图
2015/03/10 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
MAC中PyCharm设置python3解释器
2017/12/15 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
解决Django Static内容不能加载显示的问题
2019/07/28 Python
为什么黑客都用python(123个黑客必备的Python工具)
2020/01/31 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
TensorFlow的reshape操作 tf.reshape的实现
2020/04/19 Python
运动鞋、街头服装、手表和手袋的实时市场:StockX
2020/11/25 全球购物
大学生怎样进行自我评价
2013/12/07 职场文书
优秀食品类广告词
2014/03/19 职场文书
幼儿教师暑期培训方案
2014/08/27 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
Redis Cluster集群动态扩容的实现
2021/07/15 Redis