将所有点替换为单个
Replace all dots to single
如何替换
. . . Hello . . . . . . world . . .
到
. Hello . world .
用简单的点
替换"point space point"
这样试过:
/(\.\s\.)+/i
您可以使用
/\.(?: \.)+/
匹配一个句点,然后尽可能多次重复一组 space 后跟一个句点,并将其全部替换为一个句点。
const str = '. . . Hello . . . . . . world . . .';
console.log(
str.replace(/\.(?: \.)+/g, '.')
);
我们可以将替换表述为任何单个点,然后依次跟一个 space 和另一个点,整个数量出现一次或多次。也就是说,我们可以找到下面的模式,然后用一个点替换:
\.( \.)+
代码示例:
var input = ". . . Hello . . . . . . world . . .";
console.log(input);
input = input.replace(/\.( \.)+/g, ".");
console.log(input);
编辑:
我们可以通过使用 ?:
关闭捕获来稍微提高模式的效率,即使用以下模式:
\.(?: \.)+
如何替换
. . . Hello . . . . . . world . . .
到
. Hello . world .
用简单的点
替换"point space point"这样试过:
/(\.\s\.)+/i
您可以使用
/\.(?: \.)+/
匹配一个句点,然后尽可能多次重复一组 space 后跟一个句点,并将其全部替换为一个句点。
const str = '. . . Hello . . . . . . world . . .';
console.log(
str.replace(/\.(?: \.)+/g, '.')
);
我们可以将替换表述为任何单个点,然后依次跟一个 space 和另一个点,整个数量出现一次或多次。也就是说,我们可以找到下面的模式,然后用一个点替换:
\.( \.)+
代码示例:
var input = ". . . Hello . . . . . . world . . .";
console.log(input);
input = input.replace(/\.( \.)+/g, ".");
console.log(input);
编辑:
我们可以通过使用 ?:
关闭捕获来稍微提高模式的效率,即使用以下模式:
\.(?: \.)+