如果还没有,我需要在新行符号之前插入空格。例如,在这样的文本中:
Some text
need space dfgfgfkgkf
在'text'和'need'之间插入空格..
$pattern = "/[^\s]\n/i";
$replace = " \n";
但这个正则表达式不起作用
答案 0 :(得分:2)
您确定换行符是\n
吗?我会寻求更通用的解决方案并使用
echo preg_replace('/(?<=\S)(?=\r?\n)/',' ', $str);
我使用正向lookbehind和积极前瞻断言来找到行尾的位置,因此只需要一个空格作为替换。
答案 1 :(得分:1)
试试这个:
$pattern = "/\n/";
$replace = " \n";
答案 2 :(得分:1)
我尝试了下面的代码并且有效:
$str = "line1\nline2";
echo preg_replace('/\n/',' \n', $str);