繁体   English   中英

perl正则表达式解释

[英]perl regular expression explanations

我完全迷失在这行perl代码上

$path =~ s|^\./|~/|; #change the path for prettier output

我假设它与正则表达式有关。 我对正则表达式有一些了解,但我似乎无法想出这一点。

什么是=~以及为什么有正则表达式在perl中表达?

=~是一个绑定运算符。 它将替换(因此s )应用于变量$path 替换有两个部分 - 正则表达式和替换。 它们由|分隔 在这种情况下的字符。 正则表达式是

^\./

^代表字符串的开头。 \\. 代表字面点, /代表自己。 因此,字符串开头的./~/替换。

=~将标量表达式绑定到模式匹配, s用于替换

它的作用是匹配起始行与./然后用〜/替换它

至于| 管道,您可以使用任何非空白字符来界定正则表达式的部分,您可以使用^或&或q或m或{what ..大多数人使用/为了可读性,但适用于您可能匹配/使用其他内容的情况。

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM