2

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

这可能吗?如果不是,还有什么方法可以做到这一点?

这个让我难过。谢谢!

4

1 回答 1

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
于 2011-03-05T01:55:22.357 回答