如何在Perl中的正则表达式中使用chr函数?

时间:2011-03-05 01:47:56

标签: regex perl chr

我有一个Perl脚本,其中包含一个字符串,该字符串可能包含或不包含ASCII字符代码中的字符146。我有兴趣在正则表达式中使用chr()函数来查明该字符串是否确实包含该字符。如果角色在那里,我想用“'”字符替换它。

这可能吗?如果不是这样做的另一种方式呢?

这个让我难过。谢谢!

1 个答案:

答案 0 :(得分:12)

您可以将变量替换为模式:

$c = chr(146);
$target =~ s/$c/'/go; # "o" means $c won't change so remember it

但通常会通过将其转换为八进制或十六进制来将其指定为文字:

$target =~ s/\222/'/g; # octal
$target =~ s/\x92/'/g; # hex
相关问题