javascript - 如何在 javascript 中用反斜杠拆分字符串?

标签 javascript

我有一个包含两个反斜杠的字符串:

str = "active - error - oakp-ms-001 Volume Usage-E:\ PercentUsed E:\"

我只想从上面的字符串中提取“oakp-ms-001”,但由于该字符串中包含反斜杠,我无法拆分该字符串。

请问有什么解决办法吗?

最佳答案

首先,我会注意到您引用的代码存在语法错误:

str = "active - error - oakp-ms-001 Volume Usage-E:\ PercentUsed E:\"

该字符串没有结尾 ",因为末尾的 \" 是转义的 ",而不是后跟反斜杠的反斜杠结束语。

如果字符串上有结束引号,则它不会有反斜杠(\ 后面有空格是无效的转义,最终只是一个空格)。

所以让我们假设一些有效的东西而不是语法错误:

str = "active - error - oakp-ms-001 Volume Usage-E:\\ PercentUsed E:\\";

其中有反斜杠。

您需要做的根本不涉及“拆分”,但如果您想拆分包含反斜杠的内容:

var parts = str.split("\\"); // Splits on a single backslash

但我没有看到拆分对您所说的内容有何帮助。

您必须确定字符串中您想要的部分附近的哪些部分是一致的,然后创建一些东西(可能是带有捕获组的正则表达式)可以找到相对于没有变化的文本的文本。

例如:

var str = "active - error - oakp-ms-001 Volume Usage-E:\\ PercentUsed E:\\";
var match = str.match(/error - (.*?) ?Volume/);
if (match) {
    console.log(match[1]); // oakp-ms-001
}

我假设 "error - " 部分和 "Volume" 部分(前面可能有一个空格)是一致的,而且你想要他们之间的文字。

Live Example

关于javascript - 如何在 javascript 中用反斜杠拆分字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24407228/

相关文章:

javascript - 调试 MobileServiceClient 请求

javascript - 高阶函数 - Eloquent JS

php - JS 表单元素的问题

javascript - 查找不包括少数键的对象总和

javascript - 一次又一次点击后添加/隐藏一个div

javascript - 如何根据 TypeScript 中的条件在数组对象中创建新属性

javascript - 在具有Redux Thunk的React Redux应用程序中保持异步调用的DRY

javascript - 在 FF 上重新加载页面而不更改页面

Javascript 正则表达式,需要一个大写字母、一个小写字母和一个数字,并允许特殊

javascript - 初始化时光滑的 slider 宽度错误