#read in csv file in form ("case, num, val \n case1, 1, baz\n...")
# convert to form FOO = "casenumval..." roughly 6 million characters
for someString in List: #60,000 substrings
if substr not in FOO:
#do stuff
else:
#do other stuff
所以我的問題是,有太多的子字符串來檢查這個龐大的字符串。我已經嘗試逐行閱讀文件,並檢查子線對線,但這仍然崩潰的程序。有沒有什麼技術可以有效地檢查大量的子字符串是否對應一個非常大的字符串?在大字符串中查找子字符串
FOR CONTEXT: 我正在執行數據檢查,懷疑數據保存到csv文件以供審查/更改。然後將該已審閱/更改的文件與原始文件進行比較。沒有改變的數據已被驗證爲良好,必須保存到新的「exceptionFile」中。已被更改並通過的數據被忽略。並且已經被更改並且被檢查並且仍然懷疑的數據被再次發送以供審查。
如果'otherString'實際上是一個字符串,循環會遍歷_individual characters_,不子。 – ForceBru
你讀過這個問題嗎? https://stackoverflow.com/questions/1765579/fast-algorithm-for-searching-for-substrings-in-a-string – Idos
這將有助於,如果你告訴我們什麼「做東西」和「做其他事情」需要知道。例如,它是否重要_哪些子字符串被找到,或者你只是在尋找它們? – zwol