php preg_replace使用,php使用 preg_replace进行替换的示例讲解

php使用 preg_replace进行替换的示例讲解

发布于 2014-12-14 19:57:00 | 133 次阅读 | 评论: 0 | 来源: 网友投递

PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

本文为大家讲解的是php使用 preg_replace进行替换的示例讲解,感兴趣的同学参考下.

php preg_replace()替换实例讲解,php preg_replace()是执行一个正则表达式的搜索和替换的用函数.

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

是执行一个正则表达式的搜索和替换的用函数,平时我们用它时多是一次替换结束,今天又看php手册发现了一个较为难理解(自认为)的例子分享给大家。

$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4');

$pattern = array('/d/', '/[a-z]/', '/[1a]/');

$replace = array('A:$0', 'B:$0', 'C:$0');

echo "preg_replace returnsn

"; 
 

print_r(preg_replace($pattern, $replace, $subject));

?>

结果如下:

620fd0d2b5ce6554762289ee28de6fb1.png

咋一看,我就看晕了

一般 若匹配模式和替换内容这两项都是数组的话它们应该相对应,如果replacement中的元素比pattern中的少, 多出来的pattern使用空字符串进行替换.

$pattern就像个扫描器,扫到匹配的就用于之对应的$replace替换

对于上例替换过程如下:

/d/扫描$subject里的1,匹配了,匹配内容为$0(也就是1)就把1替换为A:1

然后用/[a-z]/扫描A:1不匹配,就不替换,继续用[1a]扫描A:1,匹配内容为1(也就是$0),就把A:1中1换为C:1

第一项最终被替换为A:C:1

简化过程:

1->A:1->A:C:1

a->B:a->B:C:a

2->A:2

b->B:b

A(没有符合匹配的就不替换了)

B(同上)

4->A:4

总结一点,拿$pattern里的每一个模式依次去匹配$subject里的每一个元素,匹配到了就用与$pattern对应的那个$replace对换,如上例,可能不止一次替换

相关阅读:

php使用 preg_replace进行替换的示例讲解

php使用curl存储cookie的示例

PHP与Java进行通信的示例方法

php接口与接口引用的示例讲解

php使用curl模拟登录后采集页面的示例讲解

PHP使用DES进行加密与解密的示例

PHP中使用匿名函数操作数据库的示例讲解

PHP使用GIFEncoder类生成的GIF动态图片验证码示例

PHP 正则判断中文UTF-8或GBK的示例讲解

php对二维数组按指定键值key排序的示例讲解

PHP使用SOAP调用.net的WebService示例

php用正则表达式匹配中文的示例讲解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值