0

私は少し正規表現と視覚化のために正規表現をいじっていましたが、スラッシュが前にあり、ハイフンで終わる可変長のテキストであるURLのセクションに一致するものを生成することに運がありませんでした。これはどのような表現でしょうか?

www.lamp.com/;alskfjdlkfja;sdlkfjasldfj-209

だがしかし

www.lamp.com/a;slkfja;sdlkfjas;dflkj

ハイフンが含まれていないため

4

2 に答える 2

4

次のようなことを試すことができます:

/[^-]+-

どこ:

  • /リテラルです/
  • [^-]+1 つ以上の非ハイフンです
  • -リテラルです-

あなたの例を使用して:

>>> import re
>>> url1 = 'www.lamp.com/;alskfjdlkfja;sdlkfjasldfj-209'
>>> url2 = 'www.lamp.com/a;slkfja;sdlkfjas;dflkj'
>>> 
>>> re.search(r'/[^-]+-', url1) is not None
True
>>> re.search(r'/[^-]+-', url2) is not None
False
于 2013-09-12T02:28:59.847 に答える
0

最初に urlparse ( http://docs.python.org/2/library/urlparse.html ) から開始して、URL のセクションに到達することをお勧めしますが、それは実際に一致した場合のみです。

于 2013-09-12T02:58:35.630 に答える