-1
我試圖做一些模糊匹配的DNA讀取字符串。我想允許最多1個替換錯誤,同時允許特定的底層對象成爲兩個選項之一(在這種情況下爲A或G)。蟒蛇模糊正則表達式與嵌套或正則表達式
我已經開始與以下:
>>> regex.findall("([A|G]TTAGATACCCTGGTAGTCC){0<=s<=1}", "ATTAGATACCCTGGTAGTCA")
['ATTAGATACCCTGGTAGTCA']
如預期,因爲我對匹配的確切字符串作爲預期的,因爲我對匹配的確切字符串
>>> regex.findall("([A|G]TTAGATACCCTGGTAGTCC){0<=s<=1}", "GTTAGATACCCTGGTAGTCA")
['GTTAGATACCCTGGTAGTCA']
比賽比賽但第一個鹼基對已從A切換到G(允許)
>>> regex.findall("([A|G]TTAGATACCCTGGTAGTCC){0<=s<=1}", "GTTAGATACCCTGGTAGTCx")
['GTTAGATACCCTGGTAGTCx']
個匹配,而預期的,因爲單個替換髮生(C-> X)
>>> regex.findall("([A|G]TTAGATACCCTGGTAGTCC){0<=s<=1}", "xTTAGATACCCTGGTAGTCx")
[]
不匹配(如預期),因爲有兩個取代
>>> regex.findall("([A|G]TTAGATACCCTGGTAGTCC){0<=s<=1}", "xTTAGATACCCTGGTAGTCA")
[]
應該匹配,由於第一basepair錯誤(x代替A或G)應該被視爲替代。