2014-03-26 18 views
-1

我有以下挑戰。正斜槓之後沒有任何字符

我需要一個正則表達式來查找所有包含以.net或.net /結尾的URL的行,但不能跟隨任何其他字符。

我正則表達式到目前爲止:

r'://[a-zA-z0-9.]+\.net(/*)' 

但如何忽略像www.xxxxxx.net/search的URL或www.xxxxxx.net/q=

URL並不總是在結束線!

例行:

"xxxxxxxxxxx, http://www.blog.net; 2 subscribers)" 
"yyyyyyyyyyy, http://www.blog.net/; 2 subscribers)" 
"zzzzzzzzzzz, http://www.blog.net/search; 2 subscribers)" 
"rrrrrrrrrrr, http://www.blog.net/search" 
"rrrrrrrrrrr, http://www.blog.net/q=; 
+0

並「不跟任何其他字符」是什麼意思呢? – Jerry

+0

我知道了... oeps。 –

回答

1

以下可能適用於您的樣品輸入:

r'https?://[a-zA-z0-9.]+\.net/?' 
+0

如果URL不在行尾,這是如何工作的? –

+0

URL並不總是在行尾! –

+0

@devnull我認爲用'(!!\ S | $)'替換'$'來處理同一行中的多個url是更好的選擇。 –

1

可以使用先行:

r'://[a-zA-z0-9.]+\.net(/?)(?!\S|$)' 

這隻要匹配作爲任選/後面沒有一個非空白字符。

相關問題