首页新闻找找看学习计划

谁帮我看下 这个正则该怎么写。。

0
悬赏园豆:100 [已解决问题] 解决于 2015-08-20 09:53

<tr>

  <td>

<p> 软件开发部 | 售前应用工程师 | 6000-8000元/月</p>

<p> 售前应用工程师 | 6000-8000元/月</p>

<p> 软件开发部 | 售前应用工程师</p>

  </td>

</tr>

<tr>

  <td>

  <p>汽车/摩托车 | 企业性质:外商独资 | 规模:20-99人

  </p>

  </td>

</tr>

上面P标签,有3种情况,要求写一个正则,匹配出   售前应用工程师  这几个字,字是会变的,”元/月“这个如果有就是这样的不变,每个部分是由“|”分割的。

湖底的鱼的主页 湖底的鱼 | 初学一级 | 园豆:10
提问于:2015-08-19 20:06
< >
分享
最佳答案
1

string regString = "<p>(<part1>[^|<]*)[|](<part2>[^<]*)</p>";

然后对<part2>再做解析;

如果 元/月 这个字段是固定的,要么有,要么没有,正则可以这样写:

regString = "<p>(<part1>[^\|<]*)[|](<part2>[^<元]*)(元/月)*</p>";

收获园豆:100
小尧弟 | 菜鸟二级 |园豆:500 | 2015-08-20 09:27

regString = "<p>(<part1>[^\|<]*)[|](<part2>\d+[-]\d+)(元/月)*</p>";

 

part1 对应的就是 “ 售前应用工程师 ”字段。

 

小尧弟 | 园豆:500 (菜鸟二级) | 2015-08-20 09:29

@小尧弟: 

((?<val>[^|<>]+?)\|[^|]+?(元/月|RMB/Month)\s*?</p>|<p>[^<>|]+?\|(?<val>[^|<>元RMB]+?)</p>|<p>\s*?(?<val>\w+?)\s*?</p>)

湖底的鱼 | 园豆:10 (初学一级) | 2015-08-20 09:53
其他回答(1)
0

第一种情况很容易判断,第二第三种情况就很难区分了,除非给定第二种情况一个条件:当出现第二种情况时,“|”后必定是月薪

wadesss | 园豆:194 (初学一级) | 2015-08-19 21:04

对的 ,第二种情况出现 | 后面就一定是月薪,第三者也是那样的,也就是出现两个|,如果已 月薪结尾取前面的,否则取后面的

支持(0) 反对(0) 湖底的鱼 | 园豆:10 (初学一级) | 2015-08-19 21:41

是出现一个 |

支持(0) 反对(0) 湖底的鱼 | 园豆:10 (初学一级) | 2015-08-19 21:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册