作者jacky1989 ()
看板Perl
标题[请益] 请教terminal 喂正规表示法给perl问题
时间Sat Apr 10 02:11:08 2021
大家好
我以terminal喂资料给perl遇到一些问题
fileA
Aao.a1.b2.c3.d4:a
Aao.a5.b10.c6.d2:b
Abo.a6.b15.c2.d9:b
Aao.a6.b4.c2.d7:b
Aao.a6.b4.c5.d7:b
我要从fileA找到特定的字串
我这样写
tmp.pl
open fid_rd,”<fileA”;
while(<fid_rd>){
if($_ =~ /ARGV[0]/){
print $_;
}
}
close fid_rd;
>./tmp.pl A[ao\bo]+.a[1\|6]+.b[4\15|]+.c[2\|5]+.d[7\|9]+:b
理论上应该要出现3,4,5行,但是有可能出现第一行或第二行不符合规则的资料
所以想跟大家请教,我要怎麽改才对呢?
先谢谢大家了
因为公司无法把程式码寄出来,所以我写简易版的,如果需要更多资讯,请再跟我说,感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.176.11.43 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Perl/M.1617991870.A.E52.html
1F:推 herculus6502: regular expression写法有问题,你要的可能是(…)04/10 14:27
2F:→ herculus6502: 而不是[...],建议写死在程式码中先测试一下04/10 14:27
我只是要「找到」,不需要撷取,也是这样写吗?
谢了,原来是我对regexp的用法错了,感谢指教
3F:→ flu: \b 在[...]里面代表 backspace 字符04/10 16:36
※ 编辑: jacky1989 (101.10.13.146 台湾), 04/10/2021 17:48:59
4F:推 herculus6502: 参 www.regular-expressions.info/charclass.html 04/11 06:31
感谢提供有用资讯
※ 编辑: jacky1989 (180.176.11.43 台湾), 04/12/2021 23:43:14