Javascript 忽略正则表达式,如果在末尾

Javascript ignore regex if at the end

提问人:Guilherme Souza 提问时间:8/7/2023 最后编辑:Guilherme Souza 更新时间:8/7/2023 访问量:29

问:

我正在尝试使用正则表达式使用分隔符格式化一些字符串,并且几乎完成了,但我的分隔符继续出现在字符串末尾。

例如,我有这样的代码:

var myString = "abcdefghi"
var result = myString.replace(/(.{1,3})(?:(?=.{3})\.(.{1,3})(?:(?=.{3}))?)?/g, '$1.');
console.log(result) // abc.def.ghi.

我期待abc.def.ghi

JavaScript 正则表达式 字符串 输入 替换

评论

0赞 bobble bubble 8/7/2023
您也可以尝试 s.replace(/.{3}\B/g, '$&.').这适用于表示非单词边界regex101 演示)的工作。\B
0赞 The fourth bird 8/7/2023
它应该做什么?abcdefghij

答:

1赞 Peterrabbit 8/7/2023 #1

您可以使用此方法

var myString = "abcdefghi";
var result = myString.match(/.{1,3}/g).join(".");
console.log(result)

评论

2赞 Guilherme Souza 8/7/2023
就是这样,兄弟!感谢