-1

我有一些带有如下代码的 html 文件:

 <div style="border: 0px red solid; width: 633px; position: relative; margin: 0px;
                                                                float: right">
                                                                <font style="font-size: 8pt; color: Navy; font-weight: Bold;">Unit Name: </font>My Unit Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font style="font-size: 8pt; color: Navy; font-weight: Bold;">
                                                                    Manager: </font>My Manager Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font style="font-size: 8pt;
                                                                        color: Navy; font-weight: Bold;">Category: </font>My Category
                                                            </div>
                                                            <div style="border: 0px red solid; width: 122px; position: relative; margin: 0px;
                                                                padding: 0px;">
                                                                <button name="sSdewfwo87kjLKH7624QAZMLLPIdyt75576rtffTfdef22de" style="font-family: Tahoma;"
                                                                    onclick="OpenMyWin2(1,843442,8445,'bf61fd588f00cbe7a37dab20c62e1c63')">
                                                                    More Info</button></div>

我想在 Category: & Manager: & Unit Name: 前面提取信息。如何使用正则表达式从大型 html 文件中提取这些内容。这些文件可能有 100 个类似的项目。

4

3 回答 3

0

I would recommend you consider using that tool: http://htmlagilitypack.codeplex.com/

It allows easily parse any HTML you want.

于 2012-09-26T13:39:23.183 回答
0

使用正则表达式来解析 HTML代码是个坏主意,但是如果您仍然想使用正则表达式,请使用模式:

>\s*Unit Name:[^>]*>([^<]+).*?>\s*Manager:[^>]*>([^<]+).*?>\s*Category:[^>]*>([^<]+)

可以简化为

>\s*(?:Unit Name|Manager|Category):[^>]*>([^<]+)

要修剪&nbsp;尾部([^<]+),请在正则表达式模式中替换为(\w+).

于 2012-09-26T13:44:42.647 回答
0

也许这可以帮助你。这使用Lookahead 和 Lookbehind 零宽度断言。

 (?<=(Category:|Manager:|Unit Name:) (</font>)?).*?(?=(&|<))

正则表达式好友截图

在此处输入图像描述

于 2012-09-26T13:49:51.983 回答