我继承了一个 Perl 代码库,它使用正则表达式来解析 XML 文件。我知道这不是最佳选择。我有这样的代码行:
$title =~ s`<(.*?)>``g;
和
$content =~ s`__DOUBLEFIG__`${fig_html}`;
标准 Perl 查找和替换采用以下形式:
s/foo/bar/g;
什么是
s`foo`bar`g;
做什么?
最佳答案
这些是定界正则表达式的替代方法。编写该代码的人出于个人原因或可能是为了代码的可读性而选择使用其他代码。通常,如果模式经常涉及 /
,则会选择其他内容来避免必须转义正则表达式中的斜杠字符。
This answer提供更多信息。
关于regex - Perl 正则表达式中的反引号字符 ` 含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30043766/