• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php正则表达式的分组捕获

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

经过测试,发现php正则表达式获取分组捕获是从$0开始,而平时工作中JavaScript中的正则是$1..$9

 

在提取项目代码中的汉字时,因为当时操作速度很快(赶时间),很担心当时.properties的文件{\d}的数字顺序搞错了:

1、可能从{1}开始,而不是从{0}开始

2、可能跳着写了,比如第一个是{0}第二个需要替换的地方却写着{2}

因为使用人工手动操作的,所以这种情况是难以避免,只能说减少误操作。写完了,得再检查一遍,这个遇到困难了,二三千行的代码,用眼睛一行一行查,那的比较累了,而且还不一定能检查出来。一多就容易出错,而且行与行之间靠的太近了,字又太小…

 

突然想起来,觉得php可以节省一点时间,读取文件,然后将关键的地方标红…

 

然后就开始了:php读取文件,然后逐行的读取,使用正则表达式匹配符合{\d}的行,然后将{\d}的地方使用红色进行重点的标记,之后人工去查看每一行是能是符合规则。代码不对,却很受用,至少省了用眼睛去一个一个检查的时间:

这样一眼扫过去,就能很清楚的看出每一行顺序是否都写对了,写错了的行,前面有行号,找到相应行再改改.

 

1: <!Doctype html>
   2: <html> 
   3: <head> 
> 
   5: <title>检测中文替换文字的正确性</title> 
   6: </head> 
   7: <?php 
; 
; 
  10:     $file_handle = fopen($filename, $mode); 
  11:     $lineNum = 0; 
; 
if ($file_handle) { 
while (!feof($file_handle)) { 
  15:             ++$lineNum; 
  16:             $line = fgets($file_handle); 
if (preg_match($pattern, $line)) { 
, $line); 
; 
  20:             } 
  21:         } 
else { 
; 
  24:     } 
  25:     fclose($file_handle); 
  26: ?> 
  27: </html>

 

参考问题:

用 PHP 读取文件的正确方法

掌握 PHP 中的正则表达式(1)

掌握 PHP 中的正则表达式(2)

 

准备趁春节放假那几天再把《精通正则表达式》好好温习温习,深入研究一下php、perl、python中正则的异同点。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php扩展编译流程路发布时间:2022-07-10
下一篇:
Pomm 1.1.0 RC2 发布,PHP 的 ORM 框架发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap