如果有两个句点(..)替换为一个(。),如果有四个或更多句点(....)替换为三个(...)。

要求两个选项都同时工作

我这样尝试

var fieldval = test..
fieldval = fieldval.replace(/\.{2}/g, '.')


输出量

test. (with single dot)

var fieldval = test.....
fieldval = fieldval.replace(/\.{4,}/g, '...');


输出

test... (with three dot)


这两个选项应该一起工作。
提前致谢

最佳答案

如果您想要一个正则表达式,可以使用

input.replace(/([^.]|^)(?:([.])[.]|([.]{3})[.]+)(?![.])/g, "$1$2$3");

关于javascript - 将双倍周期替换为单个,如果大于或等于4,则替换为三个,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17271625/

10-09 20:29