我有一个像这样的输入字符串/文本:
<span id="salutation">
Mister
</span><div class="c"></div>
我可以使用哪种模式获得字符串Mister?
这种模式:
string pattern = "<span id=\"salutation\"> (.*) </span>";
对我来说没有成功。
答案 0 :(得分:0)
正确的正则表达式是:
<span id="salutation">\s*(.*?)\s*</span>
遗漏了&#34; Mister&#34;周围的所有空格(\s
)。
但是,和其他语言一样,由于斜杠,你必须双重逃避:
"<span id=\"salutation\">\\s*(.*?)\\s*</span>"
在C#中你甚至可以使用这个技巧:
@"<span id=""salutation"">\s*(.*?)\s*</span>"
无论如何,正则表达式不是最好的工具。尝试使用HTML解析器(请参阅What is the best way to parse html in C#? [closed])。