如何逃避反斜杠

时间:2011-08-09 20:44:20

标签: regex perl

我正在尝试使用perl中的正则表达式将(替换为\(。这被证明是有问题的。

$var =~ s/\(/\\\(/g

似乎不起作用。表达式不是第二次转义反斜杠,结果是\\(

使这项工作的任何技巧?

感谢。

你们是对的。我的代码确实有效。它在命令行中显示的方式不同,因为它没有解释它。对不起浪费时间。

3 个答案:

答案 0 :(得分:2)

你必须逃避\

perl -e '$var = "((test))"; $var =~ s/\(/\\\\\(/g; print $var'
\\(\\(test))

答案 1 :(得分:2)

这个怎么样:

$var =~ s/\(/\\\\\(/g

答案 2 :(得分:1)

这是您正在寻找的ocde,将“/”替换为另一个 分隔符将使它变得容易。

$abc =~ s#\(#\\\(#g;