我想看看是否一個字符串包含一定的文字,如果是做什麼的,我一直在使用python的in
運營商,但我意識到它過於嚴格基本上我有以下代碼Python的非嚴格搜索文本
通常這將返回True
dynamic = "v23434"
filename = "v23434.jpg"
if dynamic in filename: return True
但是,如果我有
dynamic = "v23434-"
filename = "v23434.jpg"
然後返回False,由於破折號在dynamic
的末尾,所以我的問題是,有沒有辦法檢查字符串文件名是否有字符串dynamic
,但是在某種程度上,它不一定是完美匹配,只有幾個字符就足夠了。
編輯
通過幾個大字,我的意思是由動態的前3個字符的字符串,所以如果我有
dynamic = "v23434-"
filename = "testingv23434.jpg"
,那麼它應該一致,因爲子"v23"
filename
那麼,你如何定義「幾個字符」?你如何定義一個不完美的匹配?你需要在'filename'中找到'dynamic'的_first_少(或多少個?)字符,或者你在尋找'filename'中發生的'dynamic'的_any_子字符串?可能有一些最小長度?有算法來解決所有這些問題,但您必須具體說明您的要求。 – 2012-02-06 21:35:51
請參閱[this](http://stackoverflow.com/q/682367/566644)問題。 – 2012-02-06 21:36:56
你可以使用像萊文斯坦的距離 – shenshei 2012-02-06 21:37:24