我有以下幾點:
比賽蟒蛇正則表達式的網址完全
rule = "http://www.abc.com/"
test = "http://www.abc.com/test"
print(str(re.compile(rule).match(test)))
我想這對輸出無,而是它返回匹配。如何更改規則變量,以便正則表達式返回None?
我有以下幾點:
比賽蟒蛇正則表達式的網址完全
rule = "http://www.abc.com/"
test = "http://www.abc.com/test"
print(str(re.compile(rule).match(test)))
我想這對輸出無,而是它返回匹配。如何更改規則變量,以便正則表達式返回None?
^
字符匹配字符串的開頭,$
匹配字符串的末尾。所以,你會想:
rule = "^http://www\.abc\.com/$"
test = "http://www.abc.com/test"
print(str(re.compile(rule).match(test)))
注意.
意味着「匹配任何字符」所以,如果你想匹配的實際.
你需要收到\
。
只是好奇,是必要的,因爲python的比賽自動開始在字符串的開始? –
是的,你是對的。如果你使用的是匹配,這是沒有必要的。如果您使用搜索而不是匹配,那麼它是必要的。 –
如果你想比較完整的字符串,我不認爲你需要這裏的正則表達式。如果我誤解了你,請糾正我。 :)
可能是這個代碼將uesful:
rule = "http://www.abc.com/"
test = "http://www.abc.com/test"
print(rule == test)
返回False
如果字符串不同,True
否則。
當然,我可以檢查平等,但不幸的是,我確實需要在這種情況下的正則表達式:) –
你需要在規則中逃避你的時期。如果你不這樣做,像'「http:// www3abc3com /」'可能會匹配。至少我這麼認爲......但我可能是錯的。但試試看吧。 – moowiz2020
使用'^'和'$'包裝正則表達式並避開點 –
嘗試製作規則=「^ http:// www \ .abc \ .com/$」但仍然沒有運氣。我錯過了什麼?編輯:從來沒有,修復它 –