使用正则表达式处理xml数据

11 浏览
0 Comments

使用正则表达式处理xml数据

这个问题已经在这里有了答案

如何解析XML文件?[关闭]

我有一个XML文件:

\"280242102176594-114236481365088358dsadsad #ADMIN...

我想取出之间的字符串。

我有一个正则表达式(.*?),但它返回带有标签的字符串。

你能帮我吗?

等待回应)

P.S.:对不起,我的英语很烂!

admin 更改状态以发布 2023年5月21日
0
0 Comments

正如其他人已经指出的那样,您可能会更安全、更清洁地使用 XML 解析器。

话虽如此,您已经得到了一个可以工作的正则表达式。只需确保检索捕获组#1。这会让您得到第一对括号内的内容。

如果您使用的是 C#,而不是在 Match 上调用 toString(),请查看其 Groups 属性,然后获取其第一个元素:

string pattern = "(.*?)";
string input = "280242102176594-114236481365088358dsadsad #ADMIN";
Match match = Regex.Match(input, pattern);
if (match.Success){
    System.Console.WriteLine(match.Groups[1].Value);
}

在这个 Ideone 片段中可以看到它的运作方式。

如果你想获取模式的所有匹配,可以使用 Regex.Matches(),然后以同样的方式迭代 MatchCollection 中的每个 Match

0