问题:
是否可以使用javascript [.split]保留选定的定界符,而无需使用正则表达式?在下面的示例中,我使用node.js发送命令。
// A css text string.
var text_string = "div-1{color:red;}div-2{color:blue;}";
// Split by [}], removes the delimiter:
var partsOfStr = text_string.split('}');
// Printouts
console.log("Original: " + text_string); // Original.
console.log(partsOfStr); // Split into array.
console.log(partsOfStr[0]); // First split.
console.log(partsOfStr[1]); // Second split.
输出:
Original: div-1{color:red;}div-2{color:blue;}
[ 'div-1{color:red;', 'div-2{color:blue;', '' ]
div-1{color:red;
div-2{color:blue;
期望的行为:
我需要输出包含定界符[}]。结果行应看起来像这样:
div-1{color:red};
div-2{color:blue};
我确实找到了以下问题,但是它没有使用javascript split,而是使用了正则表达式:
答案 0 :(得分:0)
这是使用replace
的一种方法-尽管从技术上讲涉及正则表达式。由于它仅在斜杠之间而不是引号之间匹配实际的字符串,因此它几乎是一种古怪的方式。
var text_string = "div-1{color:red;}div-2{color:blue;}";
var partsOfString = text_string.replace(/;}/g, "};\n")
console.log(partsOfString);