2016-07-02 1 views
0

私は数十のURLである長い文字列を持っています。 'http'というパターンで始まり、'http'が2回目に見つかったときに各部分文字列を終了するURLのリストにする正規表現以外の方法はありますか?文字パターン(Python)に達したときに終了する文字列内の部分文字列を見つける方法

http://www.annuncibdsm.in/?view=selectcity&targetview=posthttp://www.bakecaincontri.in/?view=selectcity&targetview=posthttp://www.incontrixxx.in/?view=selectcity&targetview=posthttp://www.annuncixadulti.com/?view=selectcity&targetview=posthttp://dubizzle.us/?view=selectcity&targetview=posthttp://xincontri.com/index.php?view=selectcityhttp://www.18plusservices.com/mobile/?view=selectcity&targetview=post&cityid=0&lang=enhttp://www.mercatoneannunci.net/?view=selectcity&targetview=post&catid=46&cityid=-18&lang=it</a>http://www.annonce-be.com/?view=selectcity&targetview=post&cityid=-1&lang=fr

それは休憩なしで1つの長い文字列です。

+1

のURLの例の文字列を投稿してください。なぜ正規表現が必要ないのですか? – Simon

+0

私はすでにregexを使ってみましたが、これをstring.find( 'substring')に似た方法があるかどうかを見たいと思っていました。これを除いて、使用することができないたびにさまざまな部分文字列になります – McLeodx

+1

なぜあなたはurls_str = original_string.split( 'http')を使っていないのですか? – dmitryro

答えて

1

ちょうどこの試してみてください。基本的に、これは単なる" "によって分割し、その後、すべての"http"の前にスペースを追加し

" http".join(url.split("http")).split() 

>>> url = "http://www.annuncibdsm.in/?view=selectcity&targetview=posthttp://www.bakecaincontri.in/?view=selectcity&targetview=posthttp://www.incontrixxx.in/?view=selectcity&targetview=posthttp://www.annuncixadulti.com/?view=selectcity&targetview=posthttp://dubizzle.us/?view=selectcity&targetview=posthttp://xincontri.com/index.php?view=selectcityhttp://www.18plusservices.com/mobile/?view=selectcity&targetview=post&cityid=0&lang=enhttp://www.mercatoneannunci.net/?view=selectcity&targetview=post&catid=46&cityid=-18&lang=it</a>http://www.annonce-be.com/?view=selectcity&targetview=post&cityid=-1&lang=fr" 
>>> " http".join(url.split("http")).split() 
['http://www.annuncibdsm.in/?view=selectcity&targetview=post', 'http://www.bakecaincontri.in/?view=selectcity&targetview=post', 'http://www.incontrixxx.in/?view=selectcity&targetview=post', 'http://www.annuncixadulti.com/?view=selectcity&targetview=post', 'http://dubizzle.us/?view=selectcity&targetview=post', 'http://xincontri.com/index.php?view=selectcity', 'http://www.18plusservices.com/mobile/?view=selectcity&targetview=post&cityid=0&lang=en', 'http://www.mercatoneannunci.net/?view=selectcity&targetview=post&catid=46&cityid=-18&lang=it</a>', 'http://www.annonce-be.com/?view=selectcity&targetview=post&cityid=-1&lang=fr'] 
>>> 

を。ここで

+0

助けになるのはうれしい –

0

は再サブモジュールを使用せずにそれを行うにはPython的な方法です:

str = "http://www.annuncibdsm.in/?view=selectcity&targetview=posthttp://www.bakecaincontri.in/?view=selectcity&targetview=posthttp://www.incontrixxx.in/?view=selectcity&targetview=posthttp://www.annuncixadulti.com/?view=selectcity&targetview=posthttp://dubizzle.us/?view=selectcity&targetview=posthttp://xincontri.com/index.php?view=selectcityhttp://www.18plusservices.com/mobile/?view=selectcity&targetview=post&cityid=0&lang=enhttp://www.mercatoneannunci.net/?view=selectcity&targetview=post&catid=46&cityid=-18&lang=it</a>http://www.annonce-be.com/?view=selectcity&targetview=post&cityid=-1&lang=fr" 

list_of_urls = ["http"+url for url in str.split("http") if url != ""] 

DEMO

関連する問題