Регулярные выражения на все случаи жизни

Не работает:(
Вот пример конструкции:
Код:
Развернуть Свернуть Копировать
[{"id":1231452,"текст}]

или

,{"id":12342,"текст}
Код:
Развернуть Свернуть Копировать
(?<=(,|\[)\{"id":)\d+
не посмотрел, что смайлы повылазили
 
Смайлы я убрал, все равно не работает.
8b57f1a6692384d2bcf15b683ec8ecbc.png
 
Вот ещё что неправильно собирается.
В тексте есть конструкции вида:
Код:
Развернуть Свернуть Копировать
[{"id":123456,"from_id":-798564,
Мне нужно собрать только в данному случае : 123456
А регулярка, почему то и from_id тоже цепляет
 
Вот ещё что неправильно собирается.
В тексте есть конструкции вида:
Код:
Развернуть Свернуть Копировать
[{"id":123456,"from_id":-798564,
Мне нужно собрать только в данному случае : 123456
А регулярка, почему то и from_id тоже цепляет
ed0098e535bd7b6e8024750b954ae211.png


хватит в самом деле
 
  • Спасибо
Реакции: Folt и Dimionix
Как вытащить из текста:7773PaРсEDIМG7773countТУТЦИФРЫ от 0 до 9999
Пример текста: 7773PaРсEDIМG7773count0Все, что ... рациона. <b> 7773PaРсEDIМG7773count3Витамины также способствуют, а в два раза лучше. 7773PaРсEDIМG7773count1Человеческий организм так устроен, что: слова которые должно было спарсить:

7773PaРсEDIМG7773count0
7773PaРсEDIМG7773count3
7773PaРсEDIМG7773count1

Постоянные данные: 7773PaРсEDIМG7773count.* - а что нужно дописать дальше, чтобы 0, 1, 3 и другие цифры от 0 до 9999 собрало, еслиб был пробел - спарсил бы, но тут начивается слово, а как так спарсить все - не знаю. Нужна помощь...
 
Последнее редактирование:
  • Спасибо
Реакции: keltuzhaknut
подскажите пожалуйста регулярку для ввода подтверждения номера телефона вконтакте в ситуации когда вход в аккаунт осуществляется из необычного места(требуется ввести часть номера). есть регулярка для российских номеров (?<=\d{1})\d{8}? она работает, отсеивая два числа с конца и +7 вначале. но такая регулярка не подойдет для белорусских или украинских номеров. к примеру 380123456789 - здесь необходимо будет вводить часть номера 1234567 . в общем надо сделать такую регулярку которая в зависимости от кода страны (380,7,375 и т.д.) будет отбрасывать его и последние два числа номера.
 
  • Спасибо
Реакции: Croan
C#:
Развернуть Свернуть Копировать
var list = project.Lists["Rezult"];
list.Clear();

var response = project.Variables["response"].Value;

var regex = new Regex(@".+.*");
regex.Matches(response).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value.Split(':')[0] + ":" + m.Value.Split(':')[1]));

Посмотреть вложение 18945
Отрабатывает все , но почему то ошибку выдает
kiss_2kb.1491673161.png
 
Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
Screenshot_12.png


Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
 
Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
Посмотреть вложение 20094

Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
потому что берётся первый обратный слеш как начало регулярки, далее ближайшее .jpg Так что берёт всё верно. Если нужно имя файла взять, то это ([^\\]+$)
 
Друзья, подскажите, пожалуйста, как сделать замену:
Все слова, состоящие только из заглавных букв, заменить на эти же слова из строчных букв.

Пример:
"Есть разные СЛОВА. Бывают и ТАКИЕ. А также просто текст обычный."

Вот нужно заменить:
СЛОВА ---> слова
ТАКИЕ ----> такие

P.S.: Можно конечно через костыль типа взятия по регулярке слова из заглавных букв и потом экшеном Tolower его заменить. И потом так в цикле. Но это как-то совсем нерационально получается.
 
Друзья, подскажите, пожалуйста, как сделать замену:
Все слова, состоящие только из заглавных букв, заменить на эти же слова из строчных букв.

Пример:
"Есть разные СЛОВА. Бывают и ТАКИЕ. А также просто текст обычный."

Вот нужно заменить:
СЛОВА ---> слова
ТАКИЕ ----> такие

P.S.: Можно конечно через костыль типа взятия по регулярке слова из заглавных букв и потом экшеном Tolower его заменить. И потом так в цикле. Но это как-то совсем нерационально получается.
а замена всех значений по регулярке это не цикл думаешь?)
В зенно не предусмотрены такие регулярки. Вроде в перле или ещё где есть модификаторы изменения регистра, но не тут.
 
  • Спасибо
Реакции: Danny
Понятно. Жаль )
В NotePad находил, что есть операторы \U и \L - перевести в верхний и нижний регистр соответственно.
Думал, может, есть что-то аналогичное и в Зенно. Эти операторы из Ноутпада не работают в Зенно.
 
P.S.: Можно конечно через костыль типа взятия по регулярке слова из заглавных букв и потом экшеном Tolower его заменить. И потом так в цикле. Но это как-то совсем нерационально получается.
Не проще взять весь текст целиком, перевести в нижний регистр экшеном ToLower и перезаписать? Или не все слова нужно заменять?
 
  • Спасибо
Реакции: Danny
В этом-то и проблема )
Нужно не все слова заменять. А только те, которые состоят из заглавных букв.
Я имел ввиду, что может какие-то аббревиатуры не нужно переводить. В твоем случае, используй ToLower для всего текста и не парься, что те слова, который уже в нижнем регистре станут такими, просто весь текст станет в нижнем регистре.
 
  • Спасибо
Реакции: Danny и masterLomaster
Я имел ввиду, что может какие-то аббревиатуры не нужно переводить. В твоем случае, используй ToLower для всего текста и не парься, что те слова, который уже в нижнем регистре станут такими, просто весь текст станет в нижнем регистре.
Полагаю, предложение с большой буквы играет роль
 
  • Спасибо
Реакции: Danny
В текстах часто встречаются названия городов, различные имена и т.п.
Поэтому все в нижнем регистре - не вариант.
 
Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
Посмотреть вложение 20094

Почему самое короткое совпадение не выделяет именно самый короткий фрагмент, а берёт самый большой?
Потому-что оно и есть самое короткое, для вашего примера можно использовать такой Regex
Код:
Развернуть Свернуть Копировать
(?<=\\)[^\\]*?\.jpg
 
Всем привет нуждаюсь в вашей помощи вопрос такой есть текст каторый находится в переменой текст такой " FootUmbrellaCarEye " в другой переменой стоит слово " Umbrella " как получить номер слова ? в данном тексте четыре слова все начинаются с заглавной буквы думаю что тут можно применить регулярки толика какую понятие не имеею буду признателен за помоши)
 
Всем привет нуждаюсь в вашей помощи вопрос такой есть текст каторый находится в переменой текст такой " FootUmbrellaCarEye " в другой переменой стоит слово " Umbrella " как получить номер слова ? в данном тексте четыре слова все начинаются с заглавной буквы думаю что тут можно применить регулярки толика какую понятие не имеею буду признателен за помоши)
1. Разделить " FootUmbrellaCarEye " на строки списка:
Код:
Развернуть Свернуть Копировать
Foot
Umbrella
Car
Eye
и сравнить в цикле с каждым елементом списка пока не найдем совпадение.


www.orka13.ru/fls/Zenno/FootUmbrellaCarEye.zip
 
Всем привет нуждаюсь в вашей помощи вопрос такой есть текст каторый находится в переменой текст такой " FootUmbrellaCarEye " в другой переменой стоит слово " Umbrella " как получить номер слова ? в данном тексте четыре слова все начинаются с заглавной буквы думаю что тут можно применить регулярки толика какую понятие не имеею буду признателен за помоши)
C#:
Развернуть Свернуть Копировать
string str = project.Variables["Text"].Value;
string str2 = project.Variables["Text2"].Value;

MatchCollection mCol = Regex.Matches(str, @"[A-ZА-ЯЁ][a-zа-яё]+");

for (int i = 0; i < mCol.Count; i++)
    if (str2 == mCol[i].Value)
        return i;
Отсчёт начинается с нуля! Если нужно с единицы, то return i + 1;
 
Добрый день. Прошу помощи в составлении регулярки. Есть произвольный текст с тегами ссылок на ресурсы:
Опровергается, как мы указывали выше, динамическими соображениями это <a href="https://badsite.tld/2017/05/30/53297/tut-kakaya-to-hren">внегалактические</a>. Прозрачна, радиоизлучение которого достаточно <a href="https://goodsiteone.tld/tut-kakaya-to-hren">сильное</a> радиоизлучения определяется с низкой точностью. Наблюдениях в <a href="https://goodsitetwo.tld/tut-kakaya-to-hren">состав галактики</a>, не проявляли себя. И они делятся на отождествление лишь. Галактических источников близко друг. Большинство галактических источников радиоизлучения являются объектами, входящими в том. Обнаруживалось странное обстоятельство звездной величины. Положение источника радиоизлучения оптический объект нужно искать в радиоизлучений. Поэтому соответствующий источнику <a href="https://badsite.tld/2016/02/20/13297/tut-kakaya-to-hren">радиоизлучения не обнаруживалось</a>. Но при достаточной близости радиозвезд было отдано много усилий например звезды первой.
Из него надо удалить теги со ссылками на известный домен badsite.tld
Думал сделать это в два приёма. В первом удаляем закрывающий тег, во втором - тег с нужными атрибутами. Протестировал в редакторе на regex101.com. Результат положительный (первые два скрина). А вот привести к формату редактора в ZP не получается (третий скрин).
 

Вложения

  • reg01_1.jpg
    reg01_1.jpg
    167,5 KB · Просмотры: 605
  • reg01_2.jpg
    reg01_2.jpg
    161,2 KB · Просмотры: 638
  • reg01_3.jpg
    reg01_3.jpg
    106,2 KB · Просмотры: 601

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