Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Непонятен паттерн (точнее его части). (https://javascript.ru/forum/misc/23389-neponyaten-pattern-tochnee-ego-chasti.html)

Solovei95 22.11.2011 05:28

Непонятен паттерн (точнее его части).
 
Этот паттерн разбирает background-image на массив (точнее массив с url).
Я нашел у apng-chrome, но мне не понятно, откуда \1
/url\((['"]?)(.*?)\1\)/g

Solovei95 22.11.2011 06:03

И скажите правильный паттерн для CSV (или не знаю для чего).
var str = "'js',url(a,b,c)";

Нужно, чтобы проверял, нету заключения в скобки или кавычки и нету ли перед скобкой символов?
Нужно чтобы было так:
'js'; url(a,b,c)

Где ; это делитель массива.
Кароче - помогите с магией!
var str = "'js',(a,b,c),url(a,b,c),string,9";
var pat = /(?!\,)(['"]?)(.*?)\1/g;
var arr = str.match(pat);
document.write(arr.join(";"));

B@rmaley.e><e 22.11.2011 07:26

\1 соответствует первому "карману" (т.е. строке, попавшей под регэксп в первых скобочках), В данном случае это будет открывающая кавычка. Таким образом проверяется совпадение открывающей и закрывающей кавычек.

Kolyaj 22.11.2011 10:01

Читать http://yandex.ru/yandsearch?text=%D0...lr=16&xjst =1
Пример с CSV, в частности, там подробно разбирается.


Часовой пояс GMT +3, время: 20:36.