Maison  >  Questions et réponses  >  le corps du texte

Comment écrire régulièrement une URL de balise (python ou js)

<a target="blank"href="http://a.b.c.d/abc.php?viewkey=11111111111d5c2a51d1e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>

<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>


<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp"></a>

<a target="blank"href="http://a.b.c.d/abc"></a>


<a target="blank"href="http://a.b.c.d/123"></a>

Je veux obtenir le lien en href

Les trois premiers des 6 liens remplissent les conditions. Comment écrire l'expression régulière (c'est-à-dire que le lien doit avoir le paramètre viewkey page viewtypecategory)

Les deuxième et troisième liens sont les mêmes. Comment les dupliquer (sous python)

怪我咯怪我咯2712 Il y a quelques jours637

répondre à tous(2)je répondrai

  • 黄舟

    黄舟2017-05-18 10:53:20

    # python 2.7
    
    import re
    
    a = '''<a target="blank"href="http://a.b.c.d/abc.php?viewkey=11111111111d5c2a51d1e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>
    <a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>
    
    <a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp;page=1&amp;viewtype=basic&amp;category=rf"></a>
    
    
    <a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&amp"></a>
    
    <a target="blank"href="http://a.b.c.d/abc"></a>
    
    
    <a target="blank"href="http://a.b.c.d/123"></a>'''
    
    print set(re.findall('''(?=.*(?:viewkey))(?=.*(?:page))(?=.*(?:viewtype))(?=.*(?:category))href=["']([^'"]+)''', a))

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-18 10:53:20

    Extraire les trois premiers liens :

    links= re.findall(r'href=\"(.*?=rf)\"',l_string,re.S)

    Déduplication :

    new_links=set(links)
    
    

    répondre
    0
  • Annulerrépondre