删除PHP

时间:2017-06-15 01:27:24

标签: php regex escaping preg-replace trim

我有一个变量,其数据存储为字符串。 我想删除字符串中出现的所有\n\u。 我尝试过通常的PHP字符串命令:

$var=trim($var) 

命令删除转义字符,但它没有用,另一个答案建议使用:

trim(preg_replace('/\s\s+/', ' ',... 

然而,我仍然无法摆脱这些角色,还有其他办法吗?

这是我正在做的事情:

$some_var=trim(preg_replace('/\s\s+/', ' ', $var));
$some_arr=preg_split("/(,|:)/",$output);
while ($i<count($arr))
print $arr[i]

EDIT1:我需要删除所有转义字符,而不是任何特定的字符串。

EDIT2:当前输出: -

  

&#39; \ uBLD_0000_1953 \ n&#39;

我想删除字符串开头和结尾的转义字符。它们不是实际变量的一部分

预期产出:

  

&#39; BLD_0000_1953&#39;

2 个答案:

答案 0 :(得分:0)

这是方法&amp;模式(Demo):

echo preg_replace("/\\\[bfnrstuv0'\"]/","",'\uBLD_0000_1953\n');
// output: BLD_0000_1953

您可以根据需要扩展或缩小字符类。

您问题的最正确的正则表达式模式是:/\\\[nu]/

更智能(因为要删除的字符位于字符串的开头和结尾)是DaGhostman Dimitrov建议的非正则解决方案,作为对该问题的评论:

echo trim('\uBLD_0000_1953\n',"\\n\u");
// output: BLD_0000_1953

答案 1 :(得分:-1)

PHP中有preg_replace个函数。

$newelement = preg_replace("/[\n\r]/","",$element);