Регулярное выражение из третьего урока тьюториала
-
Тьюториал: https://youtu.be/kW9ag7-3nDk?t=6283
Если вдруг не начнет вовремя, то это примерно фрагмент с 1:44:43.
Суть примера - прочитать из файла данные. Файл содержит:
"Биография 1, строка 1 Биография 1, строка 2" "Биография 2, строка 1 Биография 2, строка 2" "Биография 3, строка 1 Биография 3, строка 2"
Теперь надо с помощью регулярки выдернуть отсюда три фрагмента, каждый из которых заключен между кавычками.
В тьюториале приведено регулярное выражение:
"([^"]*)"
Оно у меня прекрасно отрабатывает в онлайн-конструкторе: https://bablosoft.github.io/RegexpConstructor/#!/regexptest
Начинаю выполнять - пусто в переменной, куда надо поместить результат.
На скриншоте видно регулярное выражение, переменную, из которой берутся данные. И пустой результат.
При этом, если я возьму содержимое переменной FILE_CONTENT, скопирую его в упомянутый выше онлайн-конструктор, то регулярка работает. Иначе говоря, в конструкторе-то все правильно показывает.
Помогите, пожалуйста, разобраться, что я тут сделал не так.
-
@Nonverbis Всё дело кодировке файла, сделал сейчас тестовый скрипт, всё прекрасно работает. Кодировка файла должна быть UTF-8
-
@fox Спасибо за ответ. Так файл-то прочитан. На скриншоте видно, что с кодировкой все в порядке. Но на всякий случай я перепроверил кодировку - UTF-8. Убрал всю кириллицу, на
"bio 3, string 1 bio 3, string 2"" ,
Все равно пусто в SCAN_RESULT_LIST.
-
@Nonverbis Ещё раз говорю, всё работает
Вот тестовый скрипт (директорию файла поменяй только)
Вот текстовый файл
-
@fox Да, ваш скрипт работает. Спасибо. Буду разбираться, что с моим скриптом не так.
-
@Nonverbis В большей степени вероятности могу предположить, что вы применяли регулярное выражение к строке FILE_CONTENT, а надо было к переменной [[FILE_CONTENT]]