我只需要使用Regex提取以下输出:
鉴于以下投入:
<li>
<div class="col-3"> Packaged Quantity </div>
<div class="col-5"> 1 </div>
</li>
<li>
<div class="col-3"> Width </div>
<div class="col-5"> 14.7 cm </div>
</li>到目前为止,我已经尝试使用:
(?<=class=\"col-3\">)[^<]+|(?<=class=\"col-5\">)[^<]+这给了我4种不同的匹配。但我想要两场比赛,每场比赛有两组。我知道我可以使用xpath来做同样的事情,但我被限制在一些约束条件下使用Regex,而这些约束是我无法评论的。
发布于 2019-01-23 06:58:38
您可以在开始时匹配col-3">,然后为第一个组捕获非<字符,匹配</div>后面跟着非>字符,并为第二个组再次捕获非<字符:
col-3">([^<]+)<\/div>[^>]+>([^<]+)https://regex101.com/r/YAZFvV/1
(也就是说,如果有可能的话,最好使用适当的HTML解析器来处理这类事情)
https://stackoverflow.com/questions/54321508
复制相似问题