2018-10-04 13:37:37 +00:00
---
id: 587d7db6367417b2b2512b9a
title: Match Characters that Occur Zero or More Times
challengeType: 1
2019-08-05 16:17:33 +00:00
forumTopicId: 301351
2018-10-04 13:37:37 +00:00
---
## Description
< section id = 'description' >
The last challenge used the plus < code > +< / code > sign to look for characters that occur one or more times. There's also an option that matches characters that occur zero or more times.
2019-10-27 16:45:37 +00:00
The character to do this is the asterisk or star: < code > *< / code > .
2019-05-17 13:20:30 +00:00
```js
let soccerWord = "gooooooooal!";
let gPhrase = "gut feeling";
let oPhrase = "over the moon";
let goRegex = /go*/;
soccerWord.match(goRegex); // Returns ["goooooooo"]
gPhrase.match(goRegex); // Returns ["g"]
oPhrase.match(goRegex); // Returns null
```
2018-10-04 13:37:37 +00:00
< / section >
## Instructions
< section id = 'instructions' >
2019-04-01 13:49:13 +00:00
For this challenge, < code > chewieQuote< / code > has been initialized as "Aaaaaaaaaaaaaaaarrrgh!" behind the scenes. Create a regex < code > chewieRegex< / code > that uses the < code > *< / code > character to match an uppercase < code > "A"< / code > character immediately followed by zero or more lowercase < code > "a"< / code > characters in < code > chewieQuote< / code > . Your regex does not need flags or character classes, and it should not match any of the other quotes.
2018-10-04 13:37:37 +00:00
< / section >
## Tests
< section id = 'tests' >
```yml
tests:
- text: Your regex < code > chewieRegex</ code > should use the < code > *</ code > character to match zero or more < code > a</ code > characters.
2019-04-01 13:49:13 +00:00
testString: assert(/\*/.test(chewieRegex.source));
- text: Your regex should match < code > "A"</ code > in < code > chewieQuote</ code > .
testString: assert(result[0][0] === 'A');
- text: Your regex should match < code > "Aaaaaaaaaaaaaaaa"</ code > in < code > chewieQuote</ code > .
testString: assert(result[0] === 'Aaaaaaaaaaaaaaaa');
- text: Your regex < code > chewieRegex</ code > should match 16 characters in < code > chewieQuote</ code > .
testString: assert(result[0].length === 16);
- text: Your regex should not match any characters in "He made a fair move. Screaming about it can't help you."
testString: assert(!"He made a fair move. Screaming about it can't help you.".match(chewieRegex));
- text: Your regex should not match any characters in "Let him have it. It's not wise to upset a Wookiee."
testString: assert(!"Let him have it. It's not wise to upset a Wookiee.".match(chewieRegex));
2018-10-04 13:37:37 +00:00
```
< / section >
## Challenge Seed
< section id = 'challengeSeed' >
< div id = 'js-seed' >
```js
2019-04-01 13:49:13 +00:00
let chewieRegex = /change/; // Only change this line
2018-10-04 13:37:37 +00:00
let result = chewieQuote.match(chewieRegex);
```
< / div >
2019-04-01 13:49:13 +00:00
## Before Test
< div id = 'js-setup' >
2018-10-04 13:37:37 +00:00
2019-04-01 13:49:13 +00:00
```js
const chewieQuote = "Aaaaaaaaaaaaaaaarrrgh!";
```
< / div >
2018-10-04 13:37:37 +00:00
< / section >
## Solution
< section id = 'solution' >
```js
2019-02-05 16:03:19 +00:00
let chewieRegex = /Aa*/;
let result = chewieQuote.match(chewieRegex);
2018-10-04 13:37:37 +00:00
```
2019-07-18 15:24:12 +00:00
2018-10-04 13:37:37 +00:00
< / section >