Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
2 / 2 / 2
Регистрация: 18.08.2011
Сообщений: 51
1

Regex - выбрать слова с определенными символами

22.05.2017, 17:42. Показов 1170. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как с помощью регулярного выражения можно выбрать все слова (или хотя бы первое) в строке, в которых есть определенный символ, например двоеточие? Можно было бы разбить строку по пробелам в массив и выбрать те элементы (слова), где есть нужный символ, но хотелось бы через Regex, так как может понадобиться дополнительно фильтровать что-либо.

Вот так выглядят входные строки:
1 = "Текст 123:45:900А:10"
2 = "Еще текст 12:60:123 текст"
3 = "Текст 11:56А:89:1 текст 12:89:111:0"

Результат:
1 = "123:45:900А:10"
2 = "12:60:123"
3 = "11:56А:89:1" и "12:89:111:0"
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2017, 17:42
Ответы с готовыми решениями:

Regex: выбрать из списка слова с удвоенными согласными
Выбрать из списка слов, слова с удвоенными согласными. Интересует само выражение, возможно ли это...

Выбрать слова из текста которые состоят только из символов (без цифр) используя Regex
Всем привет, прошу помочь разобраться с regex, прочитал уже кучу информации, в теории вроде все...

Поиск подстроки между определенными символами
Здравствуйте! Помогите плиз,как это можно реализовать. Допустим у нас есть строка: Мы с мамой...

Вытянуть из строки текст между определенными символами
Всем привет, ранее писал на делфи, и вот начал учить c# Столкнулся с такой проблемой. Если мне...

4
930 / 459 / 232
Регистрация: 02.06.2016
Сообщений: 731
22.05.2017, 18:05 2
Qwe1, в классическом слове не может быть двоеточий, если под словом подразумевать последовательность без пробельных символов, то можно так: \S*[:]\S*
0
2 / 2 / 2
Регистрация: 18.08.2011
Сообщений: 51
22.05.2017, 22:22  [ТС] 3
Да, не слова в обычном понимании, а набор символов, среди которых есть заданный. А при указанном шаблоне Regex.Matches для первой строки вернет 3 значения: "3:4", "5:9", "А:0". А это не то, что нужно.
0
1099 / 661 / 397
Регистрация: 07.11.2015
Сообщений: 1,062
22.05.2017, 23:06 4
Цитата Сообщение от Qwe1 Посмотреть сообщение
А при указанном шаблоне Regex.Matches для первой строки вернет 3 значения: "3:4", "5:9", "А:0". А это не то, что нужно.
Вот никак не может \S*[:]\S* найти там раздельно 3 значения: "3:4", "5:9", "А:0".
По умолчанию квантификаторы жадные и шаблон найдёт "123:45:900А:10".
0
2 / 2 / 2
Регистрация: 18.08.2011
Сообщений: 51
22.05.2017, 23:32  [ТС] 5
Да, действительно, все ищет как надо! Спасибо!
0
22.05.2017, 23:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2017, 23:32
Помогаю со студенческими работами здесь

Как удалить строки с определёнными символами из Memo
У меня в мемо есть слова Мне нужно удалить строки содержащие буквы,символы - " ' "," = ",русские...

Удалить из строки всё между определенными символами
В строке например мусор вида "1 ... ... ... ... ... 1". Пример строки с мусором: "aaa "1 bbb 1"...

Считывать куски строки между определенными символами
Граждане прошу помощи так как сама не сильно программирую. Вот моя задача. Дана строка поле...

Как скопировать текст между определёнными символами?
Есть текст, занесён в переменную s. В нем в некоторых местах стоят символы "" и "". Нужно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru