Расширение предложения @David Eisenstat для реализации этого с использованием алгоритма aho-corasick. Я нашел простой модуль Python ( pyahocorasic ), который может сделать это.
Вот как будет выглядеть код для примера, приведенного в вопросе.
import ahocorasick
def find_words(list_words, text):
A = ahocorasick.Automaton()
for key in list_words:
A.add_word(key, key)
A.make_automaton()
result = []
for end_index, original_value in A.iter(text):
result.append(original_value)
return result
list_words = ['red', 'hello', 'how are you', 'hey', 'deployed']
text = 'hello, This is shared right? how are you doing tonight'
print(find_words(list_words, text))
Я не знаю, можно ли получить доступ к предварительно загруженным изображениям от кэша Safari...
Однако можно легко найти URL изображения, не анализируя HTML путем выполнения небольшого количества JavaScript вместо этого:
NSString *script = @"var n = document.images.length; var names = [];"
"for (var i = 0; i < n; i++) {"
" names.push(document.images[i].src);"
"} String(names);";
NSString *urls = [webView stringByEvaluatingJavaScriptFromString:script];
// urls contains a comma-separated list of the image URLs.
отказ от ответственности: Я не попробовал это.
Если можно узнать их имена, UIImage отвечает на + (UIImage*) imageNamed: (NSString*), который подразумевают документы, мог бы вернуть изображение от устройства широкий кэш.
Я интересовался бы знанием результатов любых экспериментов.
Я не думаю, что можно сохранить образы с помощью UIWebview непосредственно, you'r оказывающийся перед необходимостью выборка изображения вручную...