[請益] 請教terminal 餵正規表示法給perl問題

看板 Perl
作者
時間
留言 4則留言,2人參與討論
推噓 2  ( 2推 0噓 2→ )
大家好 我以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://www.ptt.cc/bbs/Perl/M.1617991870.A.E52.html
1Fherculus6502: regular expression寫法有問題,你要的可能是(…)04/10 14:27
2Fherculus6502: 而不是[...],建議寫死在程式碼中先測試一下04/10 14:27
我只是要「找到」,不需要擷取,也是這樣寫嗎? 謝了,原來是我對regexp的用法錯了,感謝指教
3Fflu: \b 在[...]裡面代表 backspace 字符04/10 16:36
※ 編輯: jacky1989 (101.10.13.146 臺灣), 04/10/2021 17:48:59
4Fherculus6502: 參 www.regular-expressions.info/charclass.html 04/11 06:31
感謝提供有用資訊 ※ 編輯: jacky1989 (180.176.11.43 臺灣), 04/12/2021 23:43:14