我如何测试一个字符串是否包含1个或多个点放在一起?请告诉我我在下面的代码中哪里出错了。
let text = "Is this .. all there is?";
let pattern = /[^\.+]/g; // do not allow more than one dot put together
// should return false but instead return true
let result = pattern.test(text);
console.log(result);
3条答案
按热度按时间au9on6nz1#
使用此正则表达式
/\.{2,}/g
量词
{}
表示长度为2或2以上,并且只能将string设置为HTML内部内容,而不能直接设置为true或false等布尔值。ubof19bj2#
你的正则表达式不适合你的目的。它匹配列表中不存在的单个字符:[^.+](
.
或+
字符),则如果字符串包含任何不是.
或+
的字符,则它将始终返回true
。你可以检查字符串是否包含一个以上的点放在一起,使用这个模式:
/\.\.+/g
ecr0jaav3#
使用
^
和$
sytnax,表示行的开始和结束。