0

我正在尝试编写一个正则表达式来在一个长长的 xml 字符串中找到一个选择,并拉出它找到的标签的第一个实例。

我当前的代码(拉出每场比赛):(<action>(.*?)</action>)

示例代码:

<request guid="58004a1e-0c32-4002-a101-59fc28af5836">
<action>Sample/Action</action><date>"7/12/12"</date>

我已经尝试使用多种我发现的方法来匹配第一个实例并忽略其他所有内容,检查并确保在当前匹配之前没有匹配,将其设置为完全匹配等等,但它们都返回两个匹配。我无法设置正则表达式来查找特定的前导或尾随标签,因为这些标签可能会发生变化。

4

1 回答 1

2

简单的答案:停止。

你问错了问题,因为在确定正则表达式是否是解决问题的合适方法之前,你已经决定要使用正则表达式来解决你的问题。

C# 和 Java 都有 XML 解析库,最好使用其中的一个,而不是尝试使用正则表达式复制它们的功能,因为 XML 不是常规语言,所以这通常是不可能的任务。

另请参阅此答案,尽管该问题是关于 HTML 的。

于 2012-07-12T15:49:19.660 回答