Регулярное совпадение пробелов, но не в «строках»
Я ищу регулярные выражения, соответствующие пробелам, только если эти пробелы не заключены в двойные кавычки ("). Например, в
Mary had "a little lamb"
оно должно соответствовать первому и второму пробелу, но не другим.
Я хочу разбить строкутолько в пробелах, которых нет в двойных кавычках, и не в кавычках.
Я использую C ++ с инструментарием Qt и хотел использовать QString :: split (QRegExp). QString очень похож на std :: string, а QRegExp в основном являются регулярным выражением POSIX, инкапсулированным в класс. Если бы существовало такое регулярное выражение, разделение было бы тривиальным.
Примеры:
Mary had "a little lamb" => Mary,had,"a little lamb"
1" 2 "3 => 1" 2 "3 (no splitting at ")
abc def="g h i" "j k" = 12 => abc,def="g h i","j k",=,12
Извините за правки, я был очень неточен, когда впервые задал вопрос. Надеюсь, теперь это несколько яснее.