如果单词在perl中包含特定模式,则从一行中删除一个单词

问题描述:

我有一行说“append serial = xyx end”; 我将搜索“serial”的行,如果它出现在行中,我将删除直到当前位置的下一个空格字符。 该行看起来像: 操作完成后的“追加结束”如果单词在perl中包含特定模式,则从一行中删除一个单词

谢谢!

+0

你尝试过这么远吗? – Jens

使用此代码:

my $string = "append serial=xyx end"; 
$string =~ s/serial\=.*\s+//; 
warn $string; 

OUTPUT:

append end at test.pl line 3. 
+0

...或非贪婪的's \\ bserial =。*?\ s + //;':) – jm666

s/serial\S*// 

从字面上看,比赛之后,用空字符串替换:

  1. serial
  2. \S非空间
  3. *零次或多次