javascript - 加入三个变量,然后用正则表达式提取

标签 javascript regex

我将 3 个变量连接到一个由 -- 分隔的文件名中,以便在另一个 Cloud 函数中使用。我使用以下代码执行此操作:

const newFileName = size + "--"+ bytes + "--"+ name + ".txt";

以后如何使用 Regex 将它们分开?

大小(先提取前--)

bytes(先提取--)

名称(第二个后提取--)

最佳答案

如果您总是使用相同的扩展名 .txt,您可以从字符串中删除该部分,然后在 --

上拆分

let str = "aaa--bbb--ccc.txt";
[size, bytes, name] = str.substring(0, str.length - 4).split("--");
console.log(size);
console.log(bytes);
console.log(name);

另一种选择是根据 -- 或匹配最后一个点的模式进行拆分,然后在字符串末尾匹配不匹配点。

let str = "aaa--bbb--ccc.txt";
[size, bytes, name] = str.split(/--|\.[^.]+$/);
console.log(size);
console.log(bytes);
console.log(name);

关于javascript - 加入三个变量,然后用正则表达式提取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57065895/

相关文章:

javascript - 同时显示/隐藏多个DIV

javascript - 调整大小功能不起作用

正则表达式只允许 1 到 12 之间的数字

ruby-on-rails - 只有在逗号后没有空格的情况下才在逗号后添加空格?

java - 使用正则表达式获取字符串中模式的索引

javascript - AngularJS - 从服务访问 Controller 内的元素

javascript - 如何将 Google 脚本表单数据导出到 Google 云端硬盘?

javascript - 按给定格式格式化文本

python - 将多个空行减少为单个(Python 方式)

javascript - 从字符串 JavaScript 中选择多个子字符串