簡體   English   中英

Python正則表達式錯誤與元組。 使用列表。 錯誤的轉義(模式結束)

[英]Python regex error with tuple. Works with list. Bad escape (end of pattern)

我在字典中有一個列表 ,其中存放了正則表達式,程序按預期運行。 但是,當我將列表轉換為元組時,在位置0處出現錯誤的錯誤轉義(模式結束)。

下面給出了錯誤。

import re

phone_num = '660-349-6829'

dict20 = {"phone": (r'\d{3}[-\.\s]??\d{3}[-\.\s]??\d{4}|\(\d{3}\)\s*\d{3}[-\.\s]??\d{4}|\d{3}[-\.\s]??\d{4}')}

for k in dict20["phone"]:
    print(k)
    results = re.findall(k, phone_num)
    print(results)


self.string, len(self.string) - 1) from None
sre_constants.error: bad escape (end of pattern) at position 0

這很好用(注釋列表而不是元組)。

import re

phone_num = '660-349-6829'

dict20 = {"phone": [r'\d{3}[-\.\s]??\d{3}[-\.\s]??\d{4}|\(\d{3}\)\s*\d{3}[-\.\s]??\d{4}|\d{3}[-\.\s]??\d{4}']}

for k in dict20["phone"]:
    print(k)
    results = re.findall(k, phone_num)
    print(results)

那不是元組-只是括號。 您必須在')'之前添加逗號以使其成為元組。

暫無
暫無

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

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