Я пытаюсь найти все метки с идентификатором и текстом, но мое регулярное выражение, похоже, не работает:
со следующим регулярным выражением:
<asp:[a-z]+.*? ID="(?<id>.*?)".*? Text="(?<text>.*?)".*?/>
и следующий образец текста:
<asp:Label ID="SomeID" Text="SomeText" />
<asp:Label Text="SomeText" />
<asp:Label ID="SomeID" />
<asp:Label ID="SomeOtherID" Text="Some Other Text" />
Я получаю следующие совпадения:
1. "<asp:Label ID="SomeID" Text="SomeText" />" has 2 groups:
1. "SomeID"
2. "SomeText"
2. "<asp:Label Text="SomeText" /> <asp:Label ID="SomeID" /> <asp:Label ID="SomeOtherID" Text="Some Other Text" />" has 2 groups:
1. "SomeID"
2. "Some Other Text"
Первый, очевидно, правильный, но я не уверен, почему появляется # 2.
И следующее регулярное выражение находит только первую метку («SomeID»), но не четвертую («SomeOtherID»):
<asp:[a-z]+ (?!.*<[a-z]).*? ID="(?<id>.*?)".*? Text="(?<text>.*?)".*?/>