Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 字符串比较不完全匹配_Python_Regex_String - Fatal编程技术网

Python 字符串比较不完全匹配

Python 字符串比较不完全匹配,python,regex,string,Python,Regex,String,我有一个字符串,例如: my_string = "Man Utd (Supernova) Esports" 我正在尝试访问API数据,其中包含曼联(超新星)电子竞技 现在我可以做: If 'Man' in `Manchester United (Supernova) Esports: do something() 但这是一个非常简单的字符串,有一个简单的答案。还有许多其他字符串命名约定的不规则之处。是否有一个库来检查匹配的字符数?即,如果15/31字符匹配,则可能是正确的字符串。我认为

我有一个字符串,例如:

my_string = "Man Utd (Supernova) Esports"
我正在尝试访问API数据,其中包含曼联(超新星)电子竞技

现在我可以做:

If 'Man' in `Manchester United (Supernova) Esports:
   do something()
但这是一个非常简单的字符串,有一个简单的答案。还有许多其他字符串命名约定的不规则之处。是否有一个库来检查匹配的字符数?即,如果15/31字符匹配,则可能是正确的字符串。我认为,正则表达式的动态性不足以应用于这类事情

我基本上想要近似匹配,而不是精确匹配

感谢您的帮助

应该能帮你解决这个问题

例如:


import difflib

print(difflib.get_close_matches("Man Utd (Supernova) Esports", ["Manchester United (Supernova) Esports", "Liverpool"]))
['Manchester United (Supernova) Esports']

print(difflib.SequenceMatcher(None, "Man Utd (Supernova) Esports", "Manchester United (Supernova) Esports").ratio())
0.84375

谢谢改为使用fuzzyfuzzy,但这同样适用于任务