Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 09.06.2015, 19:26
Интересующийся
Посмотреть профиль Найти все сообщения от sogoodweather
 
Регистрация: 09.06.2015
Сообщений: 26

Сообщение от Decode
Альтернативы обрабатываются слева направо до тех пор, пока не будет найдено соответствие.
Все верно. В вашем случае, когда машина доходит до \\" она проверяет первую альтернативу <\\.> она совпадает, остальное не проверяется, осуществляется переход к следующей позиции строки.
Ответить с цитированием
  #12 (permalink)  
Старый 09.06.2015, 19:47
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

sogoodweather, дак первая кавычка найдется сразу, затем первая альтернатива не совпадет, он переключится на вторую. Совпадение будет таким: "Скажи . Но потом идет слэш, а во второй альтернативе его не должно быть. Не совпадает. Дальше он так же должен пропустить "Привет, т.к. после него идет слэш. Получается, что в этой строке должна совпасть только подстрока "!".
Ответить с цитированием
  #13 (permalink)  
Старый 09.06.2015, 20:52
Интересующийся
Посмотреть профиль Найти все сообщения от sogoodweather
 
Регистрация: 09.06.2015
Сообщений: 26

Decode,
давайте еще раз, пошагово.
1 Кавычка совпала с шаблоном кавычки; переместились на следующую позицию; терерь у нас должно бытьсовпадение с шаблоном <\\.|[^"\\]> 0 или более раз.
2 Проверяем от текущей позиции (смотрим вперед). сопоставляем с первой веткой -- проверка провалилась. со второй веткой. Символ C соответствует второй ветке. Значит прибавляем C к уже найденному, перемещаемся на следующую позицию.

Шаг 2 повторяется до позиции перед \\" заглядываем вперед. \\" соответствует первой ветке. перемещаемся на позицию перед П. далее повторяется шаг 2 до позиции перед \\". подстрока \\" проходит по первой ветке условия. далее -- ! проходит по второй ветке. Далее сопоставление проваливается, переходим к следующему шаблону регулярки " ;сопоставление проходит, конец матчинга, бинго.

Последний раз редактировалось sogoodweather, 09.06.2015 в 21:11.
Ответить с цитированием
  #14 (permalink)  
Старый 09.06.2015, 21:55
Интересующийся
Посмотреть профиль Найти все сообщения от sogoodweather
 
Регистрация: 09.06.2015
Сообщений: 26

Rise,
Да, я забыл про ограничение. Но это сути поиска в данном случае не меняет, просто добавляет лишнюю проверку.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Регулярное выражение tata4ka Общие вопросы Javascript 4 15.11.2014 00:56
Регулярное выражение и метод test tsigel Общие вопросы Javascript 3 30.08.2013 13:47
регулярное выражение literator Ваши сайты и скрипты 1 18.08.2013 18:24
Регулярное выражение: любой символ, включая перевод строки Gleb Общие вопросы Javascript 3 28.07.2011 12:15
регулярное выражение theo_ Общие вопросы Javascript 15 21.06.2010 10:29