在php中可以使用“preg_replace”函数替换所有符号匹配条件的元素,其语法是【 preg_replace (正则表达式, 替换成, 字符串, 替换次数【默认-1,无数次】, 替换次数)】。
成都创新互联是一家集网站建设,安宁企业网站建设,安宁品牌网站建设,网站定制,安宁网站建设报价,网络营销,网络优化,安宁网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
推荐:《PHP视频教程》
PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素
需要我们用程序处理的数据并不总是预先以数据库思维设计的,或者说是无法用数据库的结构去存储的。
比如模版引擎解析模版、垃圾敏感信息过滤等等。
一般这种情况,我们用正则按我们的规则去匹配preg_match、替换preg_replace。
但一般的应用中,无非是些数据库CRUD,正则摆弄的机会很少。
根据前面说的,两种场景:统计分析,用匹配;处理用替换。
PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素。
代码如下:
preg_replace (正则表达式, 替换成, 字符串, 替换次数【默认-1,无数次】, 替换次数)
大部分语言的正则表达式都是差不多的,不过也有细微的差异。
PHP 正则表达式定界符
大多数语言的正则表达式都是由“/”作为定界符的,而在PHP中,还可以使用“#”定界,如果字符串中包含大量“/”字符,在使用“/”定界的时候,就需要对这些“/”转义,而使用“#”就不需要转义,更简洁。
PHP 正则中文和忽略大小写PHP preg_replace() 是区分大小写的,同时只能匹配ASCII编码内的字符串,如果需要匹配不区分大小写和中文等字符需要添加相应的修饰符 i 或 u。
PHP 正则表达式在遇到换行符时,会将换行符当做字符串中间一个普通字符。而通用符号.不能匹配\\n,所以遇到带有换行符的字符串正则会有很多要点。
正则替换匹配变量向后引用
如果您熟悉Javascript,一定对$1 $2 $3 …… 等向后引用比较熟悉,而在 PHP 中这些也可以被当作向后引用参数。而在PHP中,还可以使用 \\1 \\1 来表示向后引用。
向后引用的概念就是匹配一个大片段,这个正则表达式内部又被用括号切割成若干小匹配元素,那么每个匹配元素就被按照小括号序列用向后引用代替。
网址:$2
商标:$3',$weigeti); /* 栏目:W3CSchool 在线教程 网址:http://www.jb51.net 商标:Jbzj! */ // 括号中括号,外面括号先计数 echo preg_replace('/^((.+)网址:(http\\:[\\w\\-\\/\\.]+\\/)[^\\w\\-\\!]+([\\w\\-\\!]+).+)$/','原文:$1
栏目:$2
网址:$3
商标:$4',$weigeti); /* 原文:W3CSchool 在线教程网址:http://www.jb51.net ,你Jbzj!了吗? 栏目:W3CSchool 在线教程 网址:http://www.jb51.net 商标:Jbzj! */ ?>
网站标题:php正则如何替换所有符合条件的字符串
网页地址:http://lswzjz.com/article/cjisdh.html