Регулярное выражение для конкретного тега - PullRequest
2 голосов
/ 17 сентября 2008

Я работаю над регулярным выражением в проекте .NET, чтобы получить определенный тег. Я хочу сопоставить весь тег DIV и его содержимое:

<html>
   <head><title>Test</title></head>
   <body>
     <p>The first paragraph.</p>
     <div id='super_special'>
        <p>The Store paragraph</p>
     </div>
     </body>
  </head>

Код:

    Regex re = new Regex("(<div id='super_special'>.*?</div>)", RegexOptions.Multiline);


    if (re.IsMatch(test))
        Console.WriteLine("it matches");
    else
        Console.WriteLine("no match");

Я хочу соответствовать этому:

<div id="super_special">
   <p>Anything could go in here...doesn't matter.  Let's get it all</p>
</div>

Я думал, что . должен был получить все символы, но, похоже, возникли проблемы с возвратом каретки. Чего не хватает моему регулярному выражению?

Спасибо.

Ответы [ 11 ]

0 голосов
/ 17 сентября 2008

. (точка) Соответствует любому одному символу, кроме символов разрыва строки \ r и \ n. У большинства разновидностей регулярных выражений есть опция, позволяющая сделать точку с символом разрыва строки. , соответствует x или (почти) любому другому символу

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...