如果regexp匹配整个字符串(无子字符串),我如何使用JS regexp匹配字符串

时间:2018-06-18 03:03:53

标签: javascript regex

我在FCC challenge。在此挑战中,系统会要求您创建一个正则表达式以匹配字符串,前提是它具有相同的数字,重复3次,中间有空格。这意味着具有4个数字且中间带有空格的字符串不会计为有效匹配,即使下面的正则表达式与之匹配也是如此。我怎么能修改我的正则表达式以匹配一个字符串,如果它有一个特定的数字重复3次,不多也不少。

let repeatNum = "42 42 42";
let reRegex = /(\d+)\s\1\s\1/; // Change this line
let result = reRegex.test(repeatNum);

只有当特定条件对整个字符串有效时,我应该在代码中添加什么才能使其有效?

1 个答案:

答案 0 :(得分:0)

您可以使用^$来匹配字符串的开头和结尾:



const re = /^(\d+) \1 \1$/;
console.log(re.test("42 42 42"));
console.log(re.test("42 42 42 42"));
console.log(re.test("42 42"));