作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在命令行中打印所有匹配项,如下所示:
perl -0777 -nle 'print "$1\n" if /ModelProxy\("([\w*.]+)"\);/g' test.txt
test.txt
如下所示:
var orderform = new ModelProxy("orderform.b2b.*");
var orderform2b = new ModelProxy("web.orderform_2b.*");
var o2oOrderform = new ModelProxy("orderform.o2o.*");
var logistics = new ModelProxy("supply.logistics.*");
var tyreurgent = new ModelProxy("o2o.tyreurgent.*");
var common = new ModelProxy("web.common.file.*");
var cartPipeData = load("pipe/cartPipeData");
var tsCartPipeData = load("pipe/tsCartPipeData").default;
我想要的是:
orderform.b2b.*
web.orderform_2b.*
orderform.o2o.*
supply.logistics.*
o2o.tyreurgent.*
web.common.file.*
但我得到了第一个:
orderform.b2b.*
最佳答案
if//g
没有意义。您正在寻找 while//g
。
perl -0777ne'print "$1\n" while /ModelProxy\("([\w*.]+)"\);/g' test.txt
您预计比赛中途会出现换行吗?如果不是,则无需将整个文件读入内存。
perl -nle'print for /ModelProxy\("([\w*.]+)"\);/g' test.txt
关于regex - 如何让 perl 在命令行中打印所有匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38194194/
我是一名优秀的程序员,十分优秀!