用正则表达式解析数据

时间:2011-04-21 15:15:59

标签: c# regex

<option value="28.5.2011|2">28.maj. 2 dni od 109,00&nbsp;EUR</option>
<option value="27.8.2011|2">27.avg. 2 dni od 109,00&nbsp;EUR</option>
ect

我需要解析像这样的文本中的数据。

我需要进入第一个例子:

109

在第二个例子中:

109

正则表达式必须是通用的才能获得此数据,因为ei有1000行。

为了得到27.8.2011我使用split和|对于分米。与2.相同但我不知道如何获得109.

THX

2 个答案:

答案 0 :(得分:1)

String pat = "<option\svalue=".{1,15}?">.{1,10}?\s\d\s.{1,5}?\s.{1,5}?\s(.{1,10}?)\&nbsp\;EUR</option>";
Regex r = new Regex(pat, RegexOptions.IgnoreCase);
Match m = r.Match(test);
Group ad1 = m.Groups[1];
String out = ad1 +"";

答案 1 :(得分:0)

如果您的输入仅为option标记

<option value="28.5.2011|2">28.maj. 2 dni od 109,00&nbsp;EUR</option>
<option value="27.8.2011|2">27.avg. 2 dni od 109,00&nbsp;EUR</option>

以下作品:

"([^\|]+)\|([^"])">.*?(\d+),

注意:这是一个非常具体的正则表达式,我不熟悉C#。因此,如果您需要准确的代码,其他人将不得不提供它。尽管如此,对于该输入,上面的RegEx仍然有效。