Питона Модуль регулярных выражений позволяют нечеткого соответствиюPython модуля регулярного выражения нечеткого соответствие: замена рассчитывать не как ожидалось
Можно указать допустимое количество замен, S, инсерция, I, делеция, д, и общие ошибки , е, позволило
The fuzzy_counts 'option' returns a tuple (0,0,0), where:
match.fuzzy_counts[0] = the counts for 's',
match.fuzzy_counts[1] = counts for 'i' and
match.fuzzy_counts[2] = counts for 'd'
делеции и вставки подсчитывают, как ожидалось, но не замены
В приведенном ниже примере, единственное изменение является один символ удален в запросе, но отсчитывать замены составляет 6 (7, если опция BestMatch удаляются)
Как замены подсчитывали?
Я был бы признателен, что кто-то может кто-нибудь объяснить, как это работает для меня
`import regex
reference = "(TATGGGA[CT][GC]AAAG[CT]CT[AC]AA[GA]CCATGTG){s<7,i<3,d<3,e<8}"
query = "TATGGACCAAAGTCTCAAGCCATGTG"
match = regex.search(reference, query, regex.BESTMATCH)
print(match.fuzzy_counts)
(6,0,1)`
Кстати, match.fuzzy_counts, возможно, что это сообщение было после того, как: Python "regex" module: Fuzziness value
Это поведение, по-видимому, исправлено (регулярное выражение 2.4.106) все приведенные выше примеры вернут правильный балл indel/substitution (0,0,1) –