2014-01-10 3 views
0

Я хотел бы знать Regex, которые соответствуют такого рода последовательностейRegex для согласования полного элемента в файле XML

<person name="the name I want" ....[other things]> 
    .... [other tags] 
</person> 

Я пытался что-то вроде этого:

<person +name="the name I want" +.* 

Но я м не буду дальше, я могу соответствовать только первой строке, но не полный элемент

Вы хотите помочь?

+2

Почему regexp по сравнению с правильным XML-парсером? –

+0

Вы пробовали ?: ), как сказал Фредрик, парсер может быть лучшей альтернативой. –

+0

, что regexp, по крайней мере с Notepad ++, не работает. Я не пробовал использовать собственный XML-парсер. Какой XML-парсер вы рекомендуете? – Manuelarte

ответ

-1

Я нашел это в другой StackOverflow теме:

<person(.|\r\n)*?<\/person> 

Я надеюсь, что это полезно

Edit:

Я забыл добавить имя атрибута

(<person name="the name I want"(.|\r\n)*?<\/person>) 
+1

это будет соответствовать * every * person tag – Bohemian

0

Попробуйте это :

<person[*>]*name="the name I want"[^>]*>(.|[\r\n])*?<\/person> 

Если ваш язык поддерживает флаг «dotall», вы можете использовать его и изменить (.|[\r\n])* на .*.

Смежные вопросы