Регулярка работает в тестере, но не работает в программе

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
Берём переменную
{-Variable.companyBase-}
в ней ищем RegExом
(?m)(^{-Variable.getCompany-}$)


companyBase выглядит как
CompanyName
CompanyName
CompanyName
CompanyName

Разделителем выступает символ переноса.
Если я копирую данные в тестер регулярных выражений, то там всё находится.
Прилагаю скирншот проблемного места.

Помогите!
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
Берём переменную
{-Variable.companyBase-}
в ней ищем RegExом
(?m)(^{-Variable.getCompany-}$)


companyBase выглядит как
CompanyName
CompanyName
CompanyName
CompanyName

Разделителем выступает символ переноса.
Если я копирую данные в тестер регулярных выражений, то там всё находится.
Прилагаю скирншот проблемного места.

Помогите!
Пройди этот блок и если снова ничего не найдёт - вернись на него, кликни вторую кнопку(
) и скопирую сюда то, как выглядит регулярка
 

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
Пройди этот блок и если снова ничего не найдёт - вернись на него, кликни вторую кнопку(
) и скопирую сюда то, как выглядит регулярка

Всё идентично. Но не работает =(
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
а если скопировать рабочую из тестера и использовать её без переменной. Попробуй и скажи, так найдёт твой анкор?
 

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
а если скопировать рабочую из тестера и использовать её без переменной. Попробуй и скажи, так найдёт твой анкор?
Не нашёл. Значит проблема не в переменной. -_- А как ещё можно применить модификаторы? Мне кажется всё проблема в этом.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
скинь сюда экшн с небольшой частью списка и этой рабоче-нерабочей регуляркой
 

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
скинь сюда экшн с небольшой частью списка и этой рабоче-нерабочей регуляркой
А как это сделать? Что такое экшн?
===
АйзМедиа

Анкор

Астерос

МОРТОН

"НК ""Роснефть"""

Рольф

Ростелеком

РУСАЛ

Санофи

Соллерс

Alcon
===
(?m)(^Анкор$)
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 134
Баллы
113
А не проще искать просто по переменной {-Variable.getCompany-}? Или я что-то не так понял?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
А не проще искать просто по переменной {-Variable.getCompany-}? Или я что-то не так понял?
Если искать просто по переменной, то если у меня есть, например "мосстройинвест", а я нахожу "мосстрой", то результат будет удовлетворительным. Поэтому нужно точное совпадение. Для этого обозначено начало и конец. Модификатор m говорит, что строк много.
Это насколько я понимаю, я вот до этого случая вообще регулярками не заморачивался, обходился всякими php функциями =)
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 134
Баллы
113

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
там, похоже, затесалась дополнительная каретка
еще так можно (?<=(^|\r|\n))Анкор(?=($|\r|\n))
 

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
Оба ваши варианта работают. Буду признателен, если раскроете значение.
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 134
Баллы
113

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
Ладно, я понял с \s* – пробельный символ 0 или более раз.
А пробельный символ это пробел, таб, конец строки, перевод каретки? все эти?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113

Timoffey

Новичок
Регистрация
29.06.2016
Сообщения
8
Благодарностей
0
Баллы
1
Спасибо вам большое, господа!
Приятного вечера!
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
в конструкторе почему-то съедаются \r
а в экшене почему-то \r не считается концом строки
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)