php preg_replace替换换行符

use*_*629 15 php regex

使用时重新编号数组

$arr=array_values($arr); // renumber array
Run Code Online (Sandbox Code Playgroud)

我意识到在我不想要的一个数组字符串中引入换行符.

我的字符串来自:

财产类型

到财产

类型

在任何情况下,我使用:

$newelement=preg_replace("/[^A-Za-z0-9\s\s+]/"," ",$element); 
Run Code Online (Sandbox Code Playgroud)

已经在数据库插入之前删除不需要的charchters所以我试图将其更改为:

 $newelement=preg_replace("/[^A-Za-z0-9\s\s+'<br>''<br>''/n''/cr']/"," ",$element);
Run Code Online (Sandbox Code Playgroud)

但是没有变化,并且?换行/换行/回车仍然存在.

我正确地做了preg_replace吗?

Ant*_*ult 33

那个preg看起来有点复杂.然后你在开头有^作为非AZ ..或换行.所以你不想替换换行?

怎么样

$newelement=preg_replace("/[\n\r]/","",$element);
Run Code Online (Sandbox Code Playgroud)

要么

$newelement=preg_replace("/[^A-Za-z ]/","",$element);
Run Code Online (Sandbox Code Playgroud)

\ s也匹配换行符(\n)

  • 对于第一个选择`/ \\ [nr] /`将是一个更精确的模式.没有那些反斜杠逃脱它将取代字母'n'或'r'. (2认同)

Mah*_*hdi 5

这也可能起作用:

// char(32) is whitespace
// for CR
$element = strtr($element, chr(13), chr(32));

// for LF
$element = strtr($element, chr(10), chr(32));
Run Code Online (Sandbox Code Playgroud)