我正在尝试开发一个正则表达式来从这个字符串中提取地址,销售日期和销售价格信息:
<strong id="address">1245 DUPONT ST</strong><br>Toronto : Metro Toronto<br>14 Aug 2015 $71,000,000 <font color="#CC0000"></font>
理想情况下,我希望收到格式化为五行的信息,如下所示:
1245 DUPONT ST
Toronto
Metro Toronto
14 Aug 2015
$71,000,000
我怀疑该解决方案将涉及positive lookbehind的使用,因为地址信息始终可以由id="address"
标识,但我似乎无法使其正常工作。任何帮助将不胜感激。感谢。
答案 0 :(得分:1)
我不同意使用正则表达式来解析xml,而是使用html解析器。
但是,对于您的具体示例,我可以提出适用于PCRE引擎的正则表达式:
id="address">(.*?)<|<br>(.*?) : (.*?)<br>|(?<=<br>)(.*?)&|(\$[^&]+)
<强> Working demo 强>
匹配信息:
MATCH 1
1. [21-35] `1245 DUPONT ST`
MATCH 2
2. [48-55] `Toronto`
3. [58-71] `Metro Toronto`
MATCH 3
4. [75-86] `14 Aug 2015`
MATCH 4
5. [122-133] `$71,000,000`