正则表达式在两个字符串之间找到

时间:2016-06-16 14:32:50

标签: c# regex

我有一个这样的字符串:

<meta property="og:image" content="https://domain.com/image.jpg?key=MTI3MzU1NTA2MzQyMDg5NzAxNw%3D%3D.2" />

我只想抓住“内容”。

string text = "<meta property=\"og: image\" content=\"https://domain.com/image.jpg?key=MTI3MzU1NTA2MzQyMDg5NzAxNw%3D%3D.2\" />";

然后,我这样做正则表达式:

string result = Regex.Match(text, "og:image\" content=\"(.*)\" \\/>").Groups[1].Value;

输出为空(“”)。

2 个答案:

答案 0 :(得分:5)

比Regex更好,更清洁,更易于维护

var xml = XElement.Parse(text);
var content = xml.Attributes("content").First().Value;

答案 1 :(得分:0)

因为你只有一个&#39;内容&#39;在输入中,您可以编写正则表达式,如下所示:

string result = Regex.Match(text, ".* content=\"(.*)\".*").Groups[1].Value;