Javascript传递的字符串中的\ r \ n字符串被解释为换行符

时间:2017-02-21 19:38:36

标签: javascript string split substr stripping

我收到一个像“ABCD \ richard”这样的新字符串

我希望能够从字符串中删除“ABCD”。但是,JavaScript将“\ r”解释为新行元字符。我想我会遇到与任何元字符相同的问题。我正在寻找一种方法来删除所有传递的字符串上的“ABCD”字符串。

最终结果应该是“richard”作为最终字符串。这是我到目前为止所尝试的:

使用String.substr(5100); string.split( 'ABCD \');

这是我的代码:

function export_sal(user)
{
    var noABCD = user.replace(/ABCD\\/, '');
    console.log(noABCD);
}

这是HTML:

<div class="pull-left" style="padding-bottom:5px;padding-left:5px;">
    <div onclick="export_sal('<?php echo $_SERVER['AUTH_USER'];?>');" class='btn btn-info btn-md' id="e_sal">SAL Export

        

控制台输出的结果如下:

ABCD ichard

我需要console.log输出来显示:richard

我很感激帮助。谢谢。

2 个答案:

答案 0 :(得分:1)

您想要转义\字符,因此不会将其视为特殊字符。

var noABCD = str.replace(/ABCD\\/, '');

https://regex101.com/r/UjGI4o/1

答案 1 :(得分:0)

您不仅需要\,还需要\n\r\t,才能正常使用。

"ABCD\richard".replace("\r", "\\r").replace("\n", "\\n").replace("\t", "\\t").split(/\\/)

https://jsfiddle.net/4c5b5v2k/