我需要解析跟随字符串const input = '{{var}}/text{{var}}'
的结果必须跟随
const result = ['{{var}}', '/text', '{{var}}']
。谢谢
答案 0 :(得分:0)
您将需要一个函数来替换文本,但我认为您想要的正则表达式为({{\w+}})(\/\w+)({{\w+}})
。这提供了1-3组中的部分,因此您可以按自己的喜好格式化它们。您可能还想添加检查以确保第1部分与第3部分相同,以避免配对不匹配。
function replace(str) {
let matches = str.match(/({{\w+}})(\/\w+)({{\w+}})/);
return str.replace(/({{\w+}})(\/\w+)({{\w+}})/, `['${matches[1]}', '${matches[2]}', '${matches[3]}']`);
}
replace("const input = '{{var}}/text{{var}}'"); // "const input = '['{{var}}', '/text', '{{var}}']'"