Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите составить регулярное выражение. 
:(
    Опции темы
gogzor
Дата 27.4.2008, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 21.9.2006

Репутация: нет
Всего: нет



Привет всем.

Вот чтото немогу составить регулярку.
Есть текст :
Код

<select id="field-priority" name="field_priority">
<option>a</option><option>b</option><option selected="selected">c</option><option>d</option><option>e</option>
</select>


помогите выпарсить значения между тегами <option></option>

Я делал вот так <select.*?name=\"field_priority\"><option.*?>(.*)</option></select>
но он не парсит , как парсить многострочные тексты?

Это сообщение отредактировал(а) gogzor - 27.4.2008, 16:26
PM MAIL   Вверх
Rififi
Дата 27.4.2008, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 5
Всего: 36



gogzor, 
у тебя в регэкспе много лишнего. например зачем select, если ты не собираешься его использовать
достаточно так
@"<option>(.*?)<\/option>"
PM MAIL   Вверх
gogzor
Дата 27.4.2008, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 21.9.2006

Репутация: нет
Всего: нет



Спасибо. А там много select'ов , мне надо именно field_priority.
PM MAIL   Вверх
gogzor
Дата 27.4.2008, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 21.9.2006

Репутация: нет
Всего: нет



П.С Ответ ниже.  smile 

Это сообщение отредактировал(а) gogzor - 27.4.2008, 19:06
PM MAIL   Вверх
Rififi
Дата 27.4.2008, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 5
Всего: 36



gogzor, 
в таком случае правильный вариант был бы сначала выделить нужный <select>, а потом внутри него искать совпадения... но если хочешь монстрика, то вот:

@"<select.*?name=""field_priority"">[\s\S]*?(?:<option(?:\s+?.*?)?>(.*?)<\/option>)+[\s\S]*<\/select>"

брать искомое в MatchCollection[0].Groups[1].Captures
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0880 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.