正则表达式重复组

时间:2017-05-19 22:18:34

标签: regex

我正在尝试捕捉图像的网址(特定网站上可能有多少。我能够这样做但是当我接着尝试捕获其他东西之后,整个事情就崩溃了。非常感谢任何帮助。

工作正则表达式:

.(?:src="(http:\/\/website\.bla\.com\/Live.+?)".+?)

不工作

.(?:src="(http:\/\/website\.bla\.com\/Live.+?)".+?).*Status.*\s(Sld|Rtr)

示例代码:

 <div ng-class="{
    'active': active
  }" class="item text-center ng-isolate-scope" ng-transclude="" ng-repeat="slide in slides" active="slide.active">
                          <img class="image-circle ng-scope" ng-src="http://website.bla.com/Live/photos/FULL/18/134/W3764134_18.jpg" src="http://website.bla.com/Live/photos/FULL/18/134/W3764134_18.jpg">
                  </div><!-- end ngRepeat: slide in slides --><div ng-class="{
    'active': active
  }" class="item text-center ng-isolate-scope" ng-transclude="" ng-repeat="slide in slides" active="slide.active">
                          <img class="image-circle ng-scope" ng-src="http://website.bla.com/Live/photos/FULL/19/134/W3764134_19.jpg" src="http://website.bla.com/Live/photos/FULL/19/134/W3764134_19.jpg">
                  </div><!-- end ngRepeat: slide in slides --><div ng-class="{
    'active': active
  }" class="item text-center ng-isolate-scope" ng-transclude="" ng-repeat="slide in slides" active="slide.active">
                          <img class="image-circle ng-scope" ng-src="http://website.bla.com/Live/photos/FULL/20/134/W3764134_20.jpg" src="http://website.bla.com/Live/photos/FULL/20/134/W3764134_20.jpg">
                  </div><!-- end ngRepeat: slide in slides -->
                </div>
<b class="ng-binding">Status:</b> &nbsp; &nbsp; Sld

2 个答案:

答案 0 :(得分:1)

对于这个简单的例子:使用替代品。请参阅this

但如果要实施增加的要求,这可能会变得复杂。在这种情况下,您可能希望使用JSoup中的HTML解析器。

请参阅this一个 - 已经回答:

答案 1 :(得分:0)

有很多假设,你可以试试这个:

src="(http://website\.bla\.com/Live.+?)"(?:(?:[^s]|s[^r]|sr[^c])*?Status.*? (Sld|Rtr))?