Мой вопрос почти идентичен предыдущей записи, которую я нашел здесь, но не совсем.
Мне нужно проанализировать текстовый файл, где данные структурированы следующим образом:
Каждый элемент в файле начинается с #
, за которым следует метка.
Поля в сообщении разделены одним или несколькими пробелами.
Вот часть, с которой у меня проблемы.
Каждое поле может или не может быть заключено в кавычки, это требуется только в том случае, если данные содержат пробелы.
Итак, я ищу регулярное выражение, которое разделяется на пробельные символы, но не в том случае, если этот пробел находится внутри кавычки.
В настоящее время я использую отдельное регулярное выражение для каждой метки, но тогда было бы гораздо эффективнее сразу разделить его при чтении из файла.
Что касается примера учетной записи ниже (^#[A-z]+)\s([0-9]+)\s(.+)
Пример данных
#ACCOUNT 7059 "Misc. travelexpenses"
#ADRESS "M. Jackson" "somewhere over the rainbow" WI53233-1704 555-12345