Мне нужно найти значения атрибутов в файле ASPX с помощью регулярных выражений.
Это означает, что вам не нужно беспокоиться о искаженном HTML или каких-либо проблемах, связанных с HTML.
Мне нужнонайти значение определенного атрибута (LocText).Я хочу получить то, что внутри цитат.Любые теги ASPX, такие как <% =, <% #, <% $ и т. Д. Внутри значения, не имеют смысла для этого атрибута, поэтому рассматриваются как его часть. </p>
Регулярное выражение, с которого я начал, выглядит такthis:
LocText="([^"]+)"
Это прекрасно работает, первая группа, которая является текстом результата, получает все, кроме двойных кавычек, которые там недопустимы ("; вместо этого следует использовать)
Но файл ASPX позволяет использовать одинарные кавычки - тогда нужно применить второе регулярное выражение.
LocText='([^']+)'
Я мог бы использовать эти два регулярных выражения, но я ищу способ соединить их.
LocText=("([^"]+)"|'([^']+)')
Это также работает, но, кажется, не очень эффективно, так как создает ненужное количество групп. Я думаю, что это можно как-то сделать с помощью обратных ссылок, но я не могу заставить его работать.
LocText=(["']{1})([^\1]+)\1
Я подумал, что таким образом я сохраняю одинарную / двойную кавычку в первой группе, а затем говорю ей прочитать все, что НЕ является символом, найденным в первой группе. Это снова заключено в кавычку изпервая группа.Очевидно, я ошибаюсь, и это не работает так.
Есть ли способ соединить первые два выражения, создавая лишь минимальное количество групп с одной группой, являющейся значением атрибута, который я хочуполучить?Можно ли использовать обратную ссылку для значения одинарной / двойной кавычки, или я полностью неправильно понял их значение?