perl正则表达式s /(\ s *& \ s *)$ //)

时间:2014-11-21 07:43:37

标签: regex perl

我没有得到正则表达式$cmd =~ s/(\s*&\s*)$//的含义。

1 个答案:

答案 0 :(得分:4)

它正在检测$ cmd中包含“&”并删除它的最后一部分。

例如,如果$ cmd包含$cmd = 'command params1 param2 & '

然后它将删除最后一部分,结果为command params1 param2

解释

Perl regex structure: s/REGEX_TO_SEARCH/REGEX_TO_REPLACE/
Here REGEX_TO_REPLACE: empty
     REGEX_TO_SEARCH: (\s*&\s*)$
     Four parts:
       \s* : Any number of space
       &: occurence of &
       \s*: any number of space again
       $: end of string

画报示范

请注意,还会捕获可以通过$ 1 访问的突出显示的部分 enter image description here