парсинг "аргументов" в C ++ - PullRequest
1 голос
/ 03 апреля 2012

Я реализую игру в консоли.

Мне нужно разобрать строки с экранированием, я просто не могу разбить строку на пробел, чтобы получить параметры. если один из аргументов "Hello my name is \"someone\"", тогда я должен получить строку >Hello my name is "someone"<

пример:

move_player "La la" 10.0 20.0 10.0

это должно дать мне 4 параметра, где я не считаю имя команды.

setplayerid "La la" 24442
rename_player "La la" parameterwithoutquotes

Есть ли библиотека для такой вещи?

Ответы [ 2 ]

4 голосов
/ 03 апреля 2012

Взгляните на boost :: tokenizer

Используйте escaped_list_separator , который разделяет строку, используя заданный символ, сохраняющий текст в кавычках.

0 голосов
/ 03 апреля 2012

не могли бы вы просто использовать пробелы в качестве разделителя для извлечения всей информации из строки?

извините: затуманивайте часть о неиспользовании пробела.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...