2017-06-15 114 views
1

我有一个变量将数据存储为字符串。 我想删除字符串中所有出现的\n\u。 我已经尝试了平时PHP字符串命令:删除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:电流输出: -

'\ uBLD_0000_1953 \ n'

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

预期输出:

'BLD_0000_1953'

+0

“通常的字符串命令,它没有工作” - 提供,作为尝试。 –

+0

@JaredFarrish感谢您的反馈。我编辑了这个问题。 – john

+0

@john如果您提供一些与您的问题相关的字符串,您将收到更高质量的答案。你想删除非ASCII字符?只是斜线?你越具体,你会收到更好的答案。 – mickmackusa

回答

0

这里是方法&图案(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

PHP中preg_replace功能。

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