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

Напомните, плиз, как регуляркой удалить строки такого вида:
- 11111-222-3333 - 55555-666-7777
Т.е. строка начинается с тире, потом идет пробел, потом идут массивы цифр, разделенные тире и пробелами.
Проблему можно перефразировать так: нужно удалить строки, в которых есть только цифры, пробелы и тире.
 
Напомните, плиз, как регуляркой удалить строки такого вида:
- 11111-222-3333 - 55555-666-7777
Т.е. строка начинается с тире, потом идет пробел, потом идут массивы цифр, разделенные тире и пробелами.
Проблему можно перефразировать так: нужно удалить строки, в которых есть только цифры, пробелы и тире.
Через кубик Обработка текста (Regex) - Заменить (на пустоту).
Регулярка:
Развернуть Свернуть Копировать
[0-9-\ ]+
или
Регулярка:
Развернуть Свернуть Копировать
[\d-\ ]+

PS: Но нужно проверять на конкретном исходнике, может отрабатывать неправильно (не ожидаемо как бы).
 
Последнее редактирование:
Через кубик Обработка текста (Regex) - Заменить (на пустоту).
Регулярка:
Развернуть Свернуть Копировать
[0-9-\ ]+
или
Регулярка:
Развернуть Свернуть Копировать
[\d-\ ]+

PS: Но нужно проверять на конкретном исходнике, может отрабатывать неправильно (не ожидаемо как бы).
В таком виде не работает. :( Но это наверно я виноват, ибо я не совсем точно описал проблему. Дело в том, что указанная цифровая строка присутствует в тексте, который, разумеется, трогать не нужно. А данные регулярки удаляют все цифры и все пробелы во всем тексте.

Редактируемый текст имеет примерно такой вид:

Мама мыла раму
Папа пилит маму
Деда жрет водяру (2-3 литра)

- 11111-222-3333 - 55555-666-7777
 
а все цифровые строки начинаются с тире? Если да, то просто по тире удаляй
или накидай функцию проверки символов по кодировке, например.
если все символы в строке - это искомые знаки, то удаляешь строку
 
  • Спасибо
Реакции: Werti
В таком виде не работает. :( Но это наверно я виноват, ибо я не совсем точно описал проблему. Дело в том, что указанная цифровая строка присутствует в тексте, который, разумеется, трогать не нужно. А данные регулярки удаляют все цифры и все пробелы во всем тексте.

Редактируемый текст имеет примерно такой вид:

Мама мыла раму
Папа пилит маму
Деда жрет водяру (2-3 литра)

- 11111-222-3333 - 55555-666-7777

Тогда попробуйте так, если структура этой строки с постоянным кол-вом числовых групп и дефисов/пробелов между ними.
Регулярка:
Развернуть Свернуть Копировать
-\ \d+-\d+-\d+\ -\ \d+-\d+-\d+
 
  • Спасибо
Реакции: Werti
Тогда попробуйте так, если структура этой строки с постоянным кол-вом числовых групп и дефисов/пробелов между ними.
Регулярка:
Развернуть Свернуть Копировать
-\ \d+-\d+-\d+\ -\ \d+-\d+-\d+
Спасибо, работает! :bp:
 
  • Спасибо
Реакции: Sergodjan
Подскажите, как отсечь строки содержащие 2 и более точки. Пример:
"one.two three" - оставить
"one.two.three" - удалить
 
Подскажите, как отсечь строки содержащие 2 и более точки. Пример:
"one.two three" - оставить
"one.two.three" - удалить
Попробуйте так:

60805
 
  • Спасибо
Реакции: Jufel
Подскажите плиз, как вытащить регуляркой SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI

Такая вообще не подходит (?<=value=")[\w\W]*(?="/>)
Будет и другие токены тогда находить, да и еще кучу всего лишнего
Конкретно этот токен только 1 раз встречается и не пойму за что его вытянуть

C#:
Развернуть Свернуть Копировать
     <input type="hidden" name="fos_user_registration_form[_token]"
                       value="SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI"/>
                <div class="form-group">
 
Подскажите плиз, как вытащить регуляркой SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI

Такая вообще не подходит (?<=value=")[\w\W]*(?="/>)
Будет и другие токены тогда находить, да и еще кучу всего лишнего
Конкретно этот токен только 1 раз встречается и не пойму за что его вытянуть

C#:
Развернуть Свернуть Копировать
     <input type="hidden" name="fos_user_registration_form[_token]"
                       value="SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI"/>
                <div class="form-group">
Если строка стабильна по количеству символов, можно попробовать задать квантификаторами длину
C#:
Развернуть Свернуть Копировать
(?<=value=").{40,45}(?="/>)
 
  • Спасибо
Реакции: deskuznetsov
Если строка стабильна по количеству символов, можно попробовать задать квантификаторами длину
C#:
Развернуть Свернуть Копировать
(?<=value=").{40,45}(?="/>)
Спасибо! Отлично находит
 
Подскажите плиз, как вытащить регуляркой SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI

Такая вообще не подходит (?<=value=")[\w\W]*(?="/>)
Будет и другие токены тогда находить, да и еще кучу всего лишнего
Конкретно этот токен только 1 раз встречается и не пойму за что его вытянуть

C#:
Развернуть Свернуть Копировать
     <input type="hidden" name="fos_user_registration_form[_token]"
                       value="SnGs2s74LjeRD0n64OLbq0Zla2s8ZHh2vBz7f_ZAuhI"/>
                <div class="form-group">
Можно еще такой регуляркой:
Регулярка:
Развернуть Свернуть Копировать
(?<=name="fos_user_registration_form\[_token]"\s+value=\")[\w\W]*?(?=")

или

(?<=name="fos_user_registration_form\[_token]"\s+value=\").*?(?=")

61012
 
  • Спасибо
Реакции: deskuznetsov
Можно еще такой регуляркой:
Регулярка:
Развернуть Свернуть Копировать
(?<=name="fos_user_registration_form\[_token]"\s+value=\")[\w\W]*?(?=")

или

(?<=name="fos_user_registration_form\[_token]"\s+value=\").*?(?=")

Посмотреть вложение 61012
Спасибо, очень кстати. Сейчас как раз заметил что выше регулярка стала брать другой токен вместо нужного, хотя проверял нормально работало((
 
  • Спасибо
Реакции: Sergodjan
Подскажите как из куска текста - вытащить первые предложения, которые должны кончаться точкой, восклицательным знаком или вопросом. И чтобы размер куска был от 140 до 155 символов.

Это нужно для генерации meta description.
 
Подскажите как из куска текста - вытащить первые предложения, которые должны кончаться точкой, восклицательным знаком или вопросом. И чтобы размер куска был от 140 до 155 символов.

Это нужно для генерации meta description.
Попробуйте такую регулярку:
Регулярка:
Развернуть Свернуть Копировать
[\w\W]{1,150}(?=\ )
Возьмет нужное кол-во символов из начала текста, без обрезания слов.
 
Всем привет, подскажите регулярку для удаления первой строки
Если нужно удалить из массива текста в переменной, то подойдет простейшая регулярка: ".+\r?\n" (без кавычек).
Кубик "Обработка текста - Замена (Regex)" по первому номеру совпадения (0-ое совп.) заменить на пустоту.

61397


Если же нужно из списка удалить первую строку, то "Операции над списком - Удалить строки" (первую строку).

61398
 
  • Спасибо
Реакции: Kulya
Подскажите как вытащить из текста предложения в которых от 5 слов и более?
 
Подскажите как вытащить из текста предложения в которых от 5 слов и более?
Пока видится такой вариант - примерно прикинуть среднее кол-во символов в 5 словах и применить регулярку:
(вместо числа 8 в регулярке проставить это среднестатистическое кол-во символов в 5-ти словах)

61573


Регулярка:
Развернуть Свернуть Копировать
[^.]{8,}\.
 
  • Спасибо
Реакции: bzcrash
Пока видится такой вариант - примерно прикинуть среднее кол-во символов в 5 словах и применить регулярку:
(вместо числа 8 в регулярке проставить это среднестатистическое кол-во символов в 5-ти словах)

Посмотреть вложение 61573

Регулярка:
Развернуть Свернуть Копировать
[^.]{8,}\.
Если в тексте есть предложения как на русском так и на английском. Нужны предложения на английском.
 
  • Спасибо
Реакции: bzcrash
Приветствую
помогите в составлении регулярки
Есть список логинов к примеру вида:
Vasya23
Vasya Pupkin
Vasya
Vasya36
Vasya Petrov
Vassya

Нужно отобрать те логины в которых нету цифр и пробелов
в данном случае будут логины только:
Все остальные не подходят
 
Приветствую
помогите в составлении регулярки
Есть список логинов к примеру вида:


Нужно отобрать те логины в которых нету цифр и пробелов
в данном случае будут логины только:

Все остальные не подходят
Берете сроку из списка и кубиком "Обработка текста - Regex" с включенной галкой "Ошибка при пустом ответе" проверяете вхождение цифр, по зеленому выходу пройдет если в логине есть цифры, по красному - если нет.

Регулярка:
Развернуть Свернуть Копировать
\d+
 
  • Спасибо
Реакции: ErikMoor
Берете сроку из списка и кубиком "Обработка текста - Regex" с включенной галкой "Ошибка при пустом ответе" проверяете вхождение цифр, по зеленому выходу пройдет если в логине есть цифры, по красному - если нет.

Регулярка:
Развернуть Свернуть Копировать
\d+
Возможно ли как то по другому ?
У меня версия все еще 30, а тут добавлено это в 40 версии

ZennoPoster 5.40.0.0 (29.01.2020)
[+] Добавлена опция «Ошибка при пустом ответе» в действии Обработка текста → Regex.
 
Возможно ли как то по другому ?
У меня версия все еще 30, а тут добавлено это в 40 версии
После кубика "Обработка текста - Regex" добавьте кубик IF с проверкой переменной на пустоту.
'{-Variable.varname-}'!=''
 
  • Спасибо
Реакции: ErikMoor
После кубика "Обработка текста - Regex" добавьте кубик IF с проверкой переменной на пустоту.
'{-Variable.varname-}'!=''


Работает
Но работает только с цифрами, а надо еще отсеять те что с пробелом
 
Есть названия и количество товаров:

Auto Repair - Fkj 5 units
271 Repairs - Stj 20 units
Ubf Repair UCK 1 unit
Ubf Repair UCF 8 units

Какой регуляркой можно взять количество товара (цифровое значение перед units\units)?
 
Есть названия и количество товаров:

Auto Repair - Fkj 5 units
271 Repairs - Stj 20 units
Ubf Repair UCK 1 unit
Ubf Repair UCF 8 units

Какой регуляркой можно взять количество товара (цифровое значение перед units\units)?

Код:
Развернуть Свернуть Копировать
\d+(?=\ unit)

Эту пробуйте.

62434
 
  • Спасибо
Реакции: strcn и Sergodjan

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