作者sixth (海很蓝,星光灿烂)
看板Perl
标题[问题] 正规表示式 关於取代
时间Wed May 24 10:51:43 2017
请问
有一行字串
PA(A0), PB(B0), PC(C0)
我想要把PA内的空格中的字串拿掉
变成 PA(), PB(B0), PC(C0)
所以我这样写
s/PA\((.*)\)/PA\(\)/;
但是会影响到PB 和 PC
整行字串变成 PA()
请问该怎麽写比较好?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.124.166.19
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Perl/M.1495594307.A.C97.html
1F:推 Neisseria: s{PA\([^)]*\)}{PA\(\)}; 05/24 10:57
2F:→ Neisseria: 原本的条件太宽松了,很容易比对到过多东西 05/24 10:57
3F:→ Neisseria: 对於成对的符号,这种方法都适用 05/24 10:59
4F:推 herculus6502: .*会很贪心的吃到最多,改成.+?即可不要那麽贪心 05/24 19:53