minor renovations, beautify round 2 (final)

This commit is contained in:
Ilya Kantor 2015-03-12 10:26:02 +03:00
parent fad6615c42
commit 8410ce6421
212 changed files with 1981 additions and 1717 deletions

View file

@ -13,7 +13,7 @@
```js
//+ run
// найти [г или т], а затем "оп"
alert( "Гоп-стоп".match( /[гт]оп/gi ) ); // "Гоп", "топ"
alert( "Гоп-стоп".match(/[гт]оп/gi) ); // "Гоп", "топ"
```
Обратим внимание: несмотря на то, что в наборе указано несколько символов, в совпадении должен присутствовать *ровно один* из них.
@ -23,7 +23,7 @@ alert( "Гоп-стоп".match( /[гт]оп/gi ) ); // "Гоп", "топ"
```js
//+ run
// найти "В", затем [у или а], затем "ля"
alert( "Вуаля".match( /В[уа]ля/ ) ); // совпадений нет
alert( "Вуаля".match(/В[уа]ля/) ); // совпадений нет
```
Поиск подразумевает:
@ -69,7 +69,7 @@ alert( "Exception 0xAF".match(/x[0-9A-F][0-9A-F]/g) );
//+ run
var str = "The sun is rising!";
alert( str.match( /\w+/g ) ); // The, sun, is, rising*!*
alert( str.match(/\w+/g) ); // The, sun, is, rising*!*
```
А если есть слова и на русском?
@ -78,7 +78,7 @@ alert( str.match( /\w+/g ) ); // The, sun, is, rising*!*
//+ run
var str = "Солнце встаёт!";
alert( str.match( /\w+/g ) ); // null*!*
alert( str.match(/\w+/g) ); // null*!*
```
Ничего не найдено! Это можно понять, ведь <code class="pattern">\w</code> -- это именно английская букво-цифра, как можно видеть из аналога <code class="pattern">[a-zA-Z0-9_]</code>.
@ -91,7 +91,7 @@ alert( str.match( /\w+/g ) ); // null*!*
//+ run
var str = "Солнце (the sun) встаёт!";
alert( str.match( /[\wа-я]+/gi ) ); // Солнце, the, sun, вста, т*!*
alert( str.match(/[\wа-я]+/gi) ); // Солнце, the, sun, вста, т*!*
```
...Присмотритесь внимательно к предыдущему примеру! Вы видите странность? Оно не находит букву <code class="match">ё</code>, более того -- считает её разрывом в слове. Причина -- в кодировке юникод, она подробно раскрыта в главе [](/string).
@ -102,7 +102,7 @@ alert( str.match( /[\wа-я]+/gi ) ); // Солнце, the, sun, вста, т*!*
//+ run
var str = "Солнце (the sun) встаёт!";
alert( str.match( /[\wа-яё]+/gi ) ); // Солнце, the, sun, встаёт*!*
alert( str.match(/[\wа-яё]+/gi) ); // Солнце, the, sun, встаёт*!*
```
Теперь всё в порядке.
@ -125,7 +125,7 @@ alert( str.match( /[\wа-яё]+/gi ) ); // Солнце, the, sun, встаёт*
```js
//+ run
alert( "alice15@gmail.com".match( /[^\d\sA-Z]/gi ) ); // "@", "."
alert( "alice15@gmail.com".match(/[^\d\sA-Z]/gi) ); // "@", "."
```
## Не нужно экранирование