2014-04-01 29 views
2

我寫下如下正則表達式來返回everything except alphabets & letters。但是,這個正則表達式什麼也沒有返回。什麼可以是這種情況下的正則表達式?正則表達式不支持任何操作

正則表達式:

r'[^[a-z]+]' 

問候

+0

支架。 – tenub

回答

2

您正在使用的字符類[]搞亂。這是正確的(沒有大寫):

r'[^a-z]+' 

如果你想匹配的開始和結束字符串,包括大寫字母。

r'^[^a-zA-Z]+$' 

這裏是你如何使用它:

print re.findall(r'([^a-zA-Z]+)', input_string) 

()手段捕獲組,以便進行匹配後返回。

+0

你可以引用我一些正則表達式excersize網站嗎? – user2498079

+0

試試這兩個。 [Here](http://docs.python.org/2/library/re.html)和[here](http://www.tutorialspoint.com/python/python_reg_expressions.htm)。 –

+0

同時也關注'Stackoverflow正則表達式標籤'。很多人都想出很多不同的問題。雖然你已經知道它了,但它是(http://stackoverflow.com/questions/tagged/regex)! –

2

這是正則表達式引擎是如何看待的您正則表達式

[^[a-z]+   # Not any of these characters '[', nor a-z 
]     # literal ']' 

所以,作爲@Sajuj說,只需要刪除外方括號括號內[^a-z]+