我正在尝试删除每行末尾的“-”字符:
$text = "abc - xyz
abc-
-xyz
";
到目前为止,它没有产生预期的结果。
我正在使用以下PHP:
$text = preg_replace("/\-$/m", "*", $text);
所需结果:
$text = "abc - xyz
abc*
-xyz
";
或类似的解决方案。
答案 0 :(得分:1)
这个简单的表达式很可能用*
代替不需要的破折号:
$re = '/-+$/m';
$str = 'abc - xyz
abc-
-xyz
abc - xyz
abc-abc-abc-abc----
-xyz';
$subst = '*';
$result = preg_replace($re, $subst, $str);
echo $result;
abc - xyz
abc*
-xyz
abc - xyz
abc-abc-abc-abc*
-xyz
如果您想探索表达式,请在this demo的右上角进行解释。
答案 1 :(得分:1)
$text = "abc - xyz
abc-
-xyz
123-
---s---
--sss
";
$text = preg_replace("/\-\r$/m", "\r", $text);
echo $text;
产量
abc - xyz
abc
-xyz
123
---s--
--sss