字符串

时间:2018-04-04 13:00:07

标签: javascript

我从外部源接收此字符串(使用单个反斜杠):

"Spool10072098_\P_18005389.txt"

Javascript完全忽略" \",但我仍然需要完全获取字符串,因为我需要在它之后获取子字符串,在这种情况下为P_18005389.txt

所以我的问题是,如何在\之后获得子串?

2 个答案:

答案 0 :(得分:2)

在您的代码中,您需要转义反斜杠,如下所示:

/* The memory will read "Spool10072098_\P_18005389.txt": */
var x = 'Spool10072098_\\P_18005389.txt';

然后您可以使用split分割字符串。

const second_part = x.split('\\')[1];

正如您所说,从源代码以外的其他源获取的字符串只有一个反斜杠。没关系,然后内存中的字符串包含你想要的一个反斜杠。

反斜杠用于源代码以标记各种特殊字符。这就是为什么,如果你想让它出现在你的字符串中,你需要使用另一个反斜杠来逃避它。

例如:

"\n" /* will return a string containing a newline */
"\t" /* will return a string containing a tabulator */
"\\" /* will return a string containing a single \ character */

答案 1 :(得分:2)

尝试String.raw方法:

var example = String.raw`Spool10072098_\P_18005389.txt`;

console.log(example.split('\\')[1])