Есть ли способ проверить, содержит ли строка «почти» другую строку? - PullRequest
0 голосов
/ 24 апреля 2019

Я работаю над проектом, который требует, чтобы я проверял, присутствует ли string1 в строке string2, если да (то есть, если он соответствует большему пороговому значению, скажем, delta), то мне нужно извлечь этот соответствующий сегмент из строки2 исохраните его.

строка1 будет иметь длину от 100 до 200 символов. строка2 будет иметь большую длину в диапазоне от 15000 до 20000 символов.

примеры, которые я сейчас использую

string1 = "МА А НА Е ЛА ОО КА А СА БАХА И Я А БА А ХА У МА А ДА А ДА АА НГА ГА И КА А А А А А А А А А А А Д А А А А А А А А А Т А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А А ТА АА А А А А БА ААSA U DA EE GA АА JA A SA A BHA E GA E BA A NA DA I TA U "

string2 = string2

Я использовал нечеткие выражения и SequenceMatcherбиблиотеки в Python, но я боюсь, что я просто могу получить пороговое значение, используя их, но не могу извлечь подстроку из строки 2.

from fuzzywuzzy import fuzz
print(fuzz.partial_ratio(string1,string2))

После выполнения нечеткой парциальной проверки на двухстроки, я получаю соотношение 89.

Iнужно получить (приблизительную) подстроку из строки2, которая должна быть почти такой же длины строки1.То есть мне нужно, чтобы 89% соответствовало расположению строки в string2.

...