Ala*_*ing 2 regex perl whitespace matching substitution
假设我有$str = "onetwo"
.
我想编写一个忽略空格的reg ex替换命令(这使得它更具可读性):
$str =~ s/
one
two
/
three
four
/x
Run Code Online (Sandbox Code Playgroud)
而不是"threefour"
,这产生"\nthree\nfour\n"
(在哪里\n
是换行符).基本上该/x
选项忽略替换的匹配方的空白而不是替换方.如何忽略替换方面的空白?
ike*_*ami 11
s{...}{...}
基本上是s{...}{qq{...}}e
.如果您不想要qq{...}
,则需要将其替换为其他内容.
s/
one
two
/
'three' .
'four'
/ex
Run Code Online (Sandbox Code Playgroud)
甚至:
s/
one
two
/
clean('
three
four
')
/ex
Run Code Online (Sandbox Code Playgroud)
可能的实施clean
:
sub clean {
my ($s) = @_;
$s =~ s/^[ \t]+//mg;
$s =~ s/^\s+//;
$s =~ s/\s+\z//;
return $s;
}
Run Code Online (Sandbox Code Playgroud)