freeCodeCamp/curriculum/challenges/chinese/02-javascript-algorithms-an.../regular-expressions/match-characters-that-occur...

1.8 KiB

id title challengeType forumTopicId dashedName
587d7db6367417b2b2512b99 匹配出现一次或多次的字符 1 301350 match-characters-that-occur-one-or-more-times

--description--

有时,需要匹配出现一次或者连续多次的的字符(或字符组)。 这意味着它至少出现一次,并且可能重复出现。

可以使用 + 符号来检查情况是否如此。 记住,字符或匹配模式必须一个接一个地连续出现。 这就是说,字符必须一个接一个地重复。

例如,/a+/g 会在 abc 中匹配到一个匹配项,并且返回 ["a"]。 因为 + 的存在,它也会在 aabc 中匹配到一个匹配项,然后返回 ["aa"]

如果它是检查字符串 abab,它将匹配到两个匹配项并且返回["a", "a"],因为a字符不连续,在它们之间有一个b字符。 最后,因为在字符串 bcd 中没有 a,因此找不到匹配项。

--instructions--

想要在字符串 Mississippi 中匹配到出现一次或多次的字母 s 的匹配项。 编写一个使用 + 符号的正则表达式。

--hints--

你的正则表达式 myRegex 应该使用 + 符号来匹配一个或多个 s 字符。

assert(/\+/.test(myRegex.source));

你的正则表达式 myRegex 应该匹配两项。

assert(result.length == 2);

result 变量应该是一个数组,两个匹配的 ss

assert(result[0] == 'ss' && result[1] == 'ss');

--seed--

--seed-contents--

let difficultSpelling = "Mississippi";
let myRegex = /change/; // Change this line
let result = difficultSpelling.match(myRegex);

--solutions--

let difficultSpelling = "Mississippi";
let myRegex = /s+/g; // Change this line
let result = difficultSpelling.match(myRegex);