Захват слов в двойных кавычках

Обновление: это было исправлено с момента загрузки файлов HTML (и обычного текста) в кодировке Firefox 66

UTF-8 из файла: теперь поддерживаются URL-адреса без или спецификации UTF-8

https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/66# HTML


Историческая информация за 2016 год

Причина такого поведения, кажется, описана в Mozilla bugs 815551 (Autodetect UTF-8 по умолчанию) и 1071816 (Поддержка загрузки текстовых / простых файлов UTF-8 без спецификации из файла: URL)

Насколько я понимаю, в основном это сводится к « всегда следует указывать кодировку, поскольку обнаружение слишком ненадежно ».

  • Для нелокального контента следует использовать протокол. С HTTP это обеспечит правильную кодировку в Content-Type Header
  • Для содержимого HTML вы можете дополнительно использовать Doctype, т.е.
  • И для всего остального остался единственный стандартный способ - указать спецификацию ...

Разработчики Mozilla, похоже, открыты для исправления , который добавляет параметр предпочтения, поэтому однажды можно будет открывать локальные документы UTF-8 без спецификации в Firefox.

2
25.01.2017, 01:38
2 ответа

Perl спешит на помощь:

perl -lne 'print for /"([^"]+)"/g' -- input.txt
1
27.01.2020, 22:03

Вы также можете использовать grep , например:

grep -o '[^"]\+' input.txt | grep -v '^ *$'

Вывод:

OQ -63/ECC/UK/JDA/adRedprairie
OQ -63/ECC/UK/JDA/adRedprairie.ear
OQ- 63/ECC/UK/JDA/adRedprairie.xml
OQ/CZ/Ecomphos/216_06/OM-S03
OQ/CZ/Ecomphos/216_06/OM-S03.ear
OQ/CZ/Ecomphos/216_06/OM-S03.xml
2
27.01.2020, 22:03

Теги

Похожие вопросы