[英]regex - remove empty lines at the end
我想删除邮件末尾的空引号行:
> Hello
>
> thats quotet>
>
>
至
> Hello
>
> thats quotet>
但是正则表达式preg_replace("/^>\\W*$/m", "", $input_lines)
不会解决问题,因为它还删除了不在结尾处的空行的>。
编辑:仍然存在问题,仅应删除行首>
使用rtrim ,它将删除字符串右侧的指定字符。 我们要从末尾删除“>”和换行符。
代码 :
echo rtrim($input, ">".PHP_EOL);
结果 :
> Hello
>
> thats quotet
您可以使用:
$result = preg_replace('~^(?:^>\h*\R?)*+\z~m', '', $input_lines);
为了避免无用的测试,您还可以尝试以下手动模式:
$result = preg_replace('~^(?:^>\h*\R?)*+(*SKIP)\z~m', '', $input_lines);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.