技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 算法 --> 理解正则表达式中顺序环视、逆序环视

理解正则表达式中顺序环视、逆序环视

浏览:1978次  出处信息

学习正则表达式中,这个顺序环视和逆序环视,搞的比较头晕。

所以,我决定还是写在日志里吧。这样以后回忆起来方便,如果哪里理解错了,路过的朋友们请帮忙指出,谢谢!

所谓顺序环视和逆序环视,首先要理解,这个环视匹配的什么?不是内容,而是位置。并且是位置的前后要匹配对应的内容。这样理解就事半功倍了。

先来看顺序环视,这个顺序说的是从左往右看。这样,一旦使用顺序环视,例如:(?=\d) 其说的就是位置的右侧有一个数字。也就是说在一个数字前面的位置。

这样理解下来,再来看逆序环视,这个顺序是从右往左看。这样一旦使用逆序环视,例如:(?<=\d) 其说的就是位置的左侧有一个数字。也就是说在一个数字后面的位置。

简单理解清楚了,那么就可以按照书中的为美元加逗号描述了,代码如下:

(我们的美元逗号是如下规则:左侧一定要有数字,逗号的所在位置右侧一定有三个数字)

print "Please input a number \n";

$input = <STDIN>;

chomp($input);

if( $input =~ m(\d+)){
    $input =~ s/(?<=\d)(?=(\d\d\d)+$)/,/g;
    print "output is $input \n";
} else {
    print "You must input a number \n";
}

建议继续学习:

  1. 统计最近用过的linux命令    (阅读:5207)
  2. grep 正则表达式选项要记得转义    (阅读:5075)
  3. 正则表达式基础    (阅读:4922)
  4. 正则表达式的与或非    (阅读:4575)
  5. 学习Grep,Sed中的正则    (阅读:3899)
  6. URL正则表达式    (阅读:3469)
  7. 正则表达式简要入门    (阅读:3352)
  8. PHP 正则里面的两个重要技巧    (阅读:3340)
  9. 正则表达式简介及使用    (阅读:3178)
  10. 正则转义符汇总    (阅读:3184)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1