伙计们,我在 Perl 中有这个我不明白的正则表达式。
s/\w+$/($`!)$&/;
原来的字符串是
"huge dinosaur"
执行该正则表达式后,字符串现在是:
"huge (huge !)dinosaur"
我完全不明白这是怎么发生的。而且我不明白&符号在那里做什么。我理解 $`,但是为什么它在那里,据我所知 $` 在匹配之前取值,我认为没有什么,因为在上面的正则表达式之前没有匹配的表达式。
如果有人可以将我链接到有关 Perl 正则表达式的一些非常有用的教程,我将不胜感激。
谢谢
编辑:我现在明白了&符号的含义,它保存了匹配,而 $` 保存了匹配前的值,现在我再次不明白的是这整个部分:
($`!)$&
这部分是怎么变成的
(huge !)