2.8 KiB
2.8 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
587d7db6367417b2b2512b9b | Find Characters with Lazy Matching | 1 | Найти персонажей с ленивым соответствием |
Description
greedy
соответствие находит самую длинную возможную часть строки, которая соответствует шаблону регулярного выражения и возвращает его как совпадение. Альтернативой называется lazy
совпадение, которое находит наименьшую возможную часть строки, которая удовлетворяет шаблону регулярного выражения. Вы можете применить regex /t[az]*i/
к строке "titanic"
. Это регулярное выражение в основном является шаблоном, начинающимся с t
, заканчивается i
, и между ними есть несколько букв. Регулярные выражения по умолчанию greedy
, поэтому матч вернет ["titani"]
. Он находит самую большую подстроку, которая может соответствовать шаблону. Однако вы можете использовать ?
чтобы изменить его на lazy
соответствие. "titanic"
соответствует настроенному регулярному выражению /t[az]*?i/
возвращает ["ti"]
. Instructions
/<.*>/
чтобы вернуть HTML-тег <h1>
а не текст "<h1>Winter is coming</h1>"
. Помните шаблон .
в регулярном выражении соответствует любому символу. Tests
tests:
- text: <code>result</code> переменной должен быть массив с <code><h1></code> в нем
testString: 'assert(result[0] == "<h1>", "The <code>result</code> variable should be an array with <code><h1></code> in it");'
Challenge Seed
let text = "<h1>Winter is coming</h1>";
let myRegex = /<.*>/; // Change this line
let result = text.match(myRegex);
Solution
// solution required