火车头正则表达式怎么写?实际案列说明!

2年前 (2022-09-20)阅读293回复0
翱翔MJ
翱翔MJ
  • 管理员
  • 注册排名1
  • 经验值3650
  • 级别管理员
  • 主题600
  • 回复325
楼主
<tr>
    <td style="text-align:center;" bgcolor="#F7F9FC">2017/11/02&nbsp; </td>
    <td style="text-align:center;" align="left" bgcolor="#F7F9FC">金贝壳稳德利</td>
    <td style="text-align:center;" bgcolor="#F7F9FC">1.0183</td>
    <td style="text-align:center;" bgcolor="#F7F9FC">3.7391</td>
    <td style="text-align:center;" bgcolor="#F7F9FC">https://mall.ghzq.com.cn/mall/views/assetsManage/detail/10924.html</td></tr>	<tr>(*)<td (*)align=(*)>[参数]</td>//可以知道   [参数] = 金贝壳稳得利如上述对比<tr>.......<td>  与	<tr>(*)<td>	//可以视为一个意思。也就是说,从<tr>开始,直到符合下一个字符是<td>的,(*)就是说,不管是什么字符,只要是<tr>...<td> 后面字符接的是<td>就满足。//从上面代码看//有4个<td><tr>
    <td style="text-align:center;" bgcolor="#F7F9FC">2017/11/02&nbsp; </td> //满足,可视为(*)= 前面的空字符或者没有字符。
    <td style="text-align:center;" align="left" bgcolor="#F7F9FC">金贝壳稳德利</td>//满足,可视为上面一条td=(*)
    <td style="text-align:center;" bgcolor="#F7F9FC">1.0183</td>//满足,同理。
    ...//而我们需要的是有 金贝壳稳得利 那条<td>//刚好巧的是,那条<td>与其他几条多了个 align="left" 属性//所以,我们这样写。<tr>(*)<td (*)align=(*)>[参数]</td>//意思就是说 从<tr>开始找任意字符且后面接着<td>,然后在<td 里面找任意字符后接着 align= 找到后接着找任意字符是接着 >;其实找到<td 任意字符 align=任意字符 > 这段时,就已经找到了这是  金贝壳稳得利	前面的标签。
所以<tr>(*)<td (*)align=(*)>[参数]</td>  这个参数=金贝壳稳得利。


如果4个td相同呢,改如何找呢?
很简单<tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td></tr>如:抓取3<tr>(*)<td(*)<td(*)<td>[参数]</td>意思就是<tr>(任意字符)//后面一定是接着<td>
				<td>...
                <td>...
                <td>[参数]</td>//上面也可以使用这种方法,但是这种方法最好是在没有办法的情况下使用。毕竟有好的判断条件更好找准数据。


1
回帖

火车头正则表达式怎么写?实际案列说明! 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息