【发布时间】:2012-10-26 06:53:30
【问题描述】:
我有一个文件数组:
my @plistFiles = glob('Logs/*/*.plist');
我需要转义,它将包含 '(' 和 ')' 以及通常的空格。
这是@plistFiles 将返回的文件路径之一:
Logs/Run 1 (13)/Automation Results.plist
我目前有此代码用于转义文件路径中的空格,我将其传递给 OSX 终端中的命令:
$plistFile =~ s/\ /\\\ /g;
那么我怎样才能编辑这个正则表达式来转义(和)?
这对于转义 ( 和 ) 是否正确?:
$plistFile =~ s/\(\d)/\\\(\d\\\)/g;
【问题讨论】:
-
你想用什么来代替“和”?
-
@sputnick 我不想“替换”但只是转义字符
-
您究竟想“逃避”什么?出于什么目的?所有
(和),还是只有数字附近的那些?空格也?其他元字符? -
@pavel 只是
(,)围绕数字和所有空格,我在终端中使用每个文件路径,所以我需要转义这些字符。没有其他元字符。 -
你没有指定要转义的目的,那我们怎么知道需要转义什么或者如何转义呢?