python - 如何用正则表达式匹配标签里面的a标签
高洛峰
高洛峰 2017-04-17 17:51:26
0
1
677

这里有这样一个问题,我们会遇到这样的情况:

<td>(1)(<a href="(2)">(3)</ a>)(4)</ td>

这里的2,3位置决定的a标签可能存在,而1,4的位置可能由内容也可能没有内容,能不能用一个正则表达式让不管a标签存在与否都匹配出1,4位置的内容呢

比如
<td><a href=""></a>this is not empty</td>
<td>this is not empty<a href=""></a></td>
<td>this is not empty><a href=""></a>this is not empty</td>

这里有一个例子

<td>(.+?)(<a href="(.+?)>(.+?)</a>)?(.+?)</td>

但是这显然是不能满足我们的需求的,能找到正确的方案吗?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(1)
左手右手慢动作

はは、php だったら簡単ですね。タグを直接フィルタリングするだけで完了です。ただし、PY
は、テーブルからテキストを抽出するという意味によって異なります。 。
その後、
<td>(.*?)(<.+?>)*(.*?)</td>
することも、段階的に実行することもできます。最初に <td>(.+?)</td> コンテンツを取り出します。次に、すべての <.+?> を何も置き換えません。

または。 。正規表現を使用してください
<td>(.+?)(<a href="(.*?)>(.*?)</a>)?(.+?)</td>

+ は少なくとも 1 回の一致を意味し、* は 0 回以上を意味します

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート