我只想替换以下字符串中以(%...)开头的值(可能是十六进制)。
$string = 'hello@example.com%0A%0a%0B%0C%0F%0f%AA';
和预期的输出是,hello @ example.com。
我该怎么做?我正在使用preg_replace
但未使用正则表达式模式。
答案 0 :(得分:2)
如果您需要从这些字符串中提取电子邮件,还有一个没有正则表达式的解决方案:
$string = substr($string, 0, strpos($string, '%'));
答案 1 :(得分:1)
尝试
$string = preg_replace('/%[a-fA-F0-9]{2}/', '', $string);