Files

74 lines
1.5 KiB
Markdown
Raw Permalink Normal View History

---
id: 587d7db4367417b2b2512b92
title: 提取匹配项
challengeType: 1
forumTopicId: 301340
dashedName: extract-matches
---
# --description--
到目前为止,只是检查了一个匹配模式是否存在于字符串中。 还可以使用 `.match()` 方法来提取找到的实际匹配项。
可以使用字符串来调用 `.match()` 方法,并在括号内传入正则表达式。
请看下面的举例:
```js
"Hello, World!".match(/Hello/);
let ourStr = "Regular expressions";
let ourRegex = /expressions/;
ourStr.match(ourRegex);
```
这里第一个 `match` 将返回 `["Hello"]` 第二个将返回 `["expressions"]`
请注意, `.match` 语法是目前为止一直使用的 `.test` 方法中的“反向”:
```js
'string'.match(/regex/);
/regex/.test('string');
```
# --instructions--
利用 `.match()` 方法提取单词 `coding`
# --hints--
`result` 应该有字符串 `coding`
```js
assert(result.join() === 'coding');
```
您的 regex `codingRegex` 应该搜索字符串 `coding`
```js
assert(codingRegex.source === 'coding');
```
您应该使用 `.match()` 方法。
```js
assert(code.match(/\.match\(.*\)/));
```
# --seed--
## --seed-contents--
```js
let extractStr = "Extract the word 'coding' from this string.";
let codingRegex = /change/; // Change this line
let result = extractStr; // Change this line
```
# --solutions--
```js
let extractStr = "Extract the word 'coding' from this string.";
let codingRegex = /coding/; // Change this line
let result = extractStr.match(codingRegex); // Change this line
```