Перейти из форума на сайт.Реклама на Ru.Board


Система IP-видеонаблюдения "Линия". Скачать бесплатную демо-версию для 16 камер. НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Регулярные выражения

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

Hjkma

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Abs62
Спасибо, работает!
 
Добавлено:
Не работает на  

Цитата:
d:\users\vova\132465464 - john doe.txt

 
И не работает в строках, где в именах файлов перед нужными словами есть -@=() и другие символы. Дайте пожалуйста более универсальный вариант регулярки.

Всего записей: 186 | Зарегистр. 04-03-2015 | Отправлено: 17:33 26-05-2017 | Исправлено: Hjkma, 17:54 26-05-2017
Abs62



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hjkma
Тогда так:

Код:
\\[^\\]*\bJohn Doe\b(?:[^\\]*$)


----------
0 программистов ругал сердитый шеф
Потом уволил одного, и стало их FF

Всего записей: 5091 | Зарегистр. 22-10-2005 | Отправлено: 18:01 26-05-2017
Hjkma

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Abs62
Большое спасибо! Теперь все кажется работает.

Всего записей: 186 | Зарегистр. 04-03-2015 | Отправлено: 18:04 26-05-2017
Hjkma

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Опять нужна помощь. Теперь есть группа слов, разделенные запятыми. Задача: нужно пометить все одиночные слова, но не две и более слова, которые располагаются между запятыми.  
Пример:
 

Цитата:
Tags: high heels, lake, glamour, black hair, self shot, selfie
 

Нужно пометить именно эти слова: lake, glamour, selfie
Подобрать регулярку не получается. Нужна помощь зала.

Всего записей: 186 | Зарегистр. 04-03-2015 | Отправлено: 14:21 01-07-2017 | Исправлено: Hjkma, 16:44 01-07-2017
sikemo

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
что считаем неодиночным словом пробел? дефис?
 
\"[^\s]\w+\"

Всего записей: 984 | Зарегистр. 27-11-2008 | Отправлено: 15:55 01-07-2017
Hjkma

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sikemo
В нотепад++ не работает. Пусть будет и пробел и дефис. Но можно просто пробел, если сложно будет учитывать и дефис и пробел одновременно.
upd. Упс, по ошибке вместо "запятые" написал "кавычки", прошу прощения, обновил пост.
К слову и это:

Цитата:
,[^\s]\w+\,

тоже не работает. Работает это:

Цитата:
, [^\s]\w+\,

но результат не полный, не все одиночные слова помечает.

Всего записей: 186 | Зарегистр. 04-03-2015 | Отправлено: 16:21 01-07-2017 | Исправлено: Hjkma, 16:46 01-07-2017
Abs62



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hjkma

Код:
[,:]\s*\b\w+\b(?![ \-])


----------
0 программистов ругал сердитый шеф
Потом уволил одного, и стало их FF

Всего записей: 5091 | Зарегистр. 22-10-2005 | Отправлено: 18:52 01-07-2017
sikemo

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
проверял на  Akelpad

Всего записей: 984 | Зарегистр. 27-11-2008 | Отправлено: 19:18 01-07-2017
Hjkma

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Abs62
Спасибо большое, работает отлично.

Всего записей: 186 | Зарегистр. 04-03-2015 | Отправлено: 19:37 01-07-2017
drondo



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
имеется большой xml файл, примерно 30 тысяч строк вот фрагмент

Код:
<Property value="GcTechnologyRequirement.xml">
          <Property name="ID" value="TECH1" />
          <Property name="InventoryType" value="GcInventoryType.xml">
            <Property name="InventoryType" value="Substance" />
          </Property>
          <Property name="Amount" value="100" />
        </Property>
        <Property value="GcTechnologyRequirement.xml">
          <Property name="ID" value="COMUNCOMMON1" />
          <Property name="InventoryType" value="GcInventoryType.xml">
            <Property name="InventoryType" value="Substance" />
          </Property>
          <Property name="Amount" value="20" />
        </Property>

возможно ли с помощью notepad++, коммандной строки или еще чего то легкодоступного для windows 10 извлечь значения из таких строк <Property name="ID" value="что то там" />, сохранить только из строк, содержащих ID?
Интересует только значение, на выходе хочется получить текстовый файл разделенный переносами строк вот так оформленный:

Код:
TECH1
COMUNCOMMON1
и т.д.

Всего записей: 395 | Зарегистр. 28-10-2005 | Отправлено: 13:49 13-08-2017 | Исправлено: drondo, 13:51 13-08-2017
sikemo

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Akelpad фильтр по строкам Script> Linefilter.js > Include lines  ID\" value
флажок регэкспа включить

Всего записей: 984 | Зарегистр. 27-11-2008 | Отправлено: 18:46 13-08-2017 | Исправлено: sikemo, 18:47 13-08-2017
VadKomarov



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Всем здравствуйте. Я к сожаления мало знаю по регулярным выражениям, но понадобилось....
Задача такая... пользователь получает документ с входящим номером, надо этот номер внести с базу данных.. мне надо написать "регулярку" что бы пользователь мог внести только лишь цифровой, цифровой с разделителем '/' или '-' а так же определенные буквы но не другие...
Примеры
123, 1/123, 1-123, 1с, 1сс, 1дсп, 1/1с .... и т.д.
то есть цифры могут быть любыми буквы из заданных (с,сс,дсп) ну и могут быть разделители.
Хотелось как можно короче и универсальнее написать "регулярку"
Помогите пожалуйста.
Спасибо.

Всего записей: 82 | Зарегистр. 01-05-2005 | Отправлено: 04:03 11-09-2017
VV189



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В рамках вашей формулировки задачи будет работать так

Код:
\d+([/-]?\d*[дсп]*)

 
 

Всего записей: 117 | Зарегистр. 10-09-2006 | Отправлено: 05:53 11-09-2017
VadKomarov



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VV189

Цитата:
В рамках вашей формулировки задачи будет работать так  
 
Код:
\d+([/-]?\d*[дсп]*)

 
Спасибо огромное.
а можно в крации расшифровать что и как обозначает, а так же вот эту картинку .. можно ссылку на этот редактор или в чем это сделано?
 
 
а еще как допустим 1/1-123с
и как можно ограничить что бы не было куча "сссссс" а максимум 2 что бы не получилось что ввели и поставили три "ссс" ну сто бы была возможность только "С" или "СС" или "ДСП" сделать...

Всего записей: 82 | Зарегистр. 01-05-2005 | Отправлено: 06:03 11-09-2017 | Исправлено: VadKomarov, 06:20 11-09-2017
VV189



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а можно в крации расшифровать

\d+ Цифровой символ (одно или более вхождений)
[/-]? на данном месте в строке может стоять один из перечисленных символов (ноль или одно вхождений)
\d* Цифровой символ (ноль или более вхождений)
[дсп]* на данном месте в строке может стоять один из перечисленных символов (ноль или более вхождений)
 
На скрине просто текстовый редактор
Можете для простоты жизни использовать Notepad++ (регулярку я набросал именно в нем, а скрин с саблайма, т.к. для универсальности проверял еще и там из-за возможных отличий синтаксиса, ведь тип регулярки вы не уточнили).
 
 
 
 
Добавлено:

Цитата:
а еще как допустим 1/1-123с  

\d+([/-]?\d*[/-]?\d*[дсп]*)

Цитата:
как можно ограничить что бы не было куча "сссссс" а максимум 2

а давайте вы кейс полностью раскроете и не будете по капле выцеживать ваши условия окружения
 
Квантификатор для ноль-двух вхождений {0,2}
 
 
 

Всего записей: 117 | Зарегистр. 10-09-2006 | Отправлено: 06:19 11-09-2017 | Исправлено: VV189, 06:29 11-09-2017
YuS_2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VV189

Цитата:
[дсп]* на данном месте в строке может стоять один из перечисленных символов (ноль или более вхождений)

Небольшая поправка:
не один из, а любой из... и в любом сочетании

Всего записей: 1649 | Зарегистр. 03-02-2009 | Отправлено: 09:24 11-09-2017
VV189



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
Тут согласен, абсолютно верное уточнение.

Всего записей: 117 | Зарегистр. 10-09-2006 | Отправлено: 09:32 11-09-2017
VadKomarov



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Спасибо за разъяснения.
 

Цитата:
\d+([/-]?\d*[/-]?\d*[дсп]*)  

 
а еще подскажите  как допустим 1/1-123с сделать
и как можно ограничить что бы не было куча "сссссс" а максимум 2 что бы не получилось что ввели и поставили три "ссс" ну что бы была возможность только "С" или "СС" или "ДСП" сделать...

Всего записей: 82 | Зарегистр. 01-05-2005 | Отправлено: 09:33 14-09-2017
Mavrikii

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
и как можно ограничить что бы не было куча "сссссс" а максимум 2 что бы не получилось что ввели и поставили три "ссс" ну что бы была возможность только "С" или "СС" или "ДСП" сделать

вместо [дсп]*  написать (c{0,2}|дсп)? это в случае, если данные символы не являются обязательными.
если нужны всегда, то (c{1,2}|дсп)

Всего записей: 4684 | Зарегистр. 20-09-2014 | Отправлено: 09:43 14-09-2017 | Исправлено: Mavrikii, 10:07 14-09-2017
regist123



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VadKomarov, а перед буквами всегда сразу цифры или после цифр до букв может быть тире, слеш?  
Предположил, что как в вашем примере после цифр сразу буквы (если они есть) и сделал более строгий вариант

Код:
\d+([/-]?\d)*(с{1,2}|дсп)?

 
 
Добавлено:
 

----------
FAQ по восстановлению аккаунтов
Подфорум для раздач

Всего записей: 5402 | Зарегистр. 20-03-2009 | Отправлено: 10:25 14-09-2017
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Регулярные выражения

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2017

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru