renovations

This commit is contained in:
Ilya Kantor 2015-04-06 09:20:38 +03:00
parent 36b0b5b7d7
commit 0d6ca23fb7
8 changed files with 112 additions and 6 deletions

View file

@ -1,4 +1,4 @@
Регулярное выражение для поиска 3-значного цвета: <code class="pattern">/#[a-f0-9]{3}/i</code>.
Регулярное выражение для поиска 3-значного цвета вида `#abc`: <code class="pattern">/#[a-f0-9]{3}/i</code>.
Нужно добавить ещё три символа, причём нужны именно три, четыре или семь символов не нужны. Эти три символа либо есть, либо нет.
@ -18,4 +18,13 @@ var str = "color: #3f3; background-color: #AA00ef; and: #abcd";
alert( str.match(re) ); // #3f3 #AA0ef #abc
```
В последнем выражении <code class="subject">#abcd</code> было найдено совпадение <code class="match">#abc</code>. Чтобы этого не происходило, добавим в конец <code class="pattern">\b</code>:
```js
//+ run
var re = /#([a-f0-9]{3}){1,2}\b/gi;
var str = "color: #3f3; background-color: #AA00ef; and: #abcd";
alert( str.match(re) ); // #3f3 #AA0ef
```

View file

@ -11,4 +11,4 @@ var str = "color: #3f3; background-color: #AA00ef; and: #abcd";
alert( str.match(re) ); // #3f3 #AA0ef
```
P.S. Значения из четырёх и более букв, такие как `#abcd` мы в этой задаче также учитываем, но берём из них только необходимые для совпадения символы, то есть `#abc`.
P.S. Значения из любого другого количества букв, кроме 3 и 6, такие как `#abcd`, не должны подходить под регэксп.