簡體   English   中英

將字符串與正則表達式匹配

[英]Matching a string to a regular expression

我想檢查一個字符串是否匹配正則表達式描述的字符串系列的一部分。

期望的行為將是這樣的:

>>> re.findall("hi", "h[ia]t")
["hi"]
>>> re.findall("at", "h[ia]t")
["at"]
>>> re.findall("hat", "h[ia]t")
["hat"]
>>> re.findall("cat", "h[ia]t")
[]

但是re.findall()的第二個參數是按字面解釋的。

當然,在上面的簡單示例中,我可以明確地檢查“hit”和“hat”,但對於更復雜的表達式來說,這似乎很笨拙。

正則表達式不是生成器。 您可以匹配字符串與正則表達式,但不能構造與給定正則表達式匹配的所有字符串。 你可能需要類似shell的大括號擴展,但我不認為stdlib提供了類似的東西( fnmatch很接近但只提供匹配)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM