Могу ли я использовать строку в качестве разделителя при использовании метода boost split? - PullRequest
3 голосов
/ 30 марта 2012

Я пытаюсь разобрать строку HTML, используя метод split от boost.Можно ли использовать с разделителем строк, например "<td>"?Может кто-нибудь дать мне пример того, как сделать это эффективно?

Я пытаюсь сделать что-то вроде

vector <string> fields;
split( fields, str,  is_any_of( "<td>" ) );

Но потом я понимаю, что это лечит '<', 't', 'd' и '>' - все символы как разделители. Я пытаюсь найти способ использовать строку в качестве разделителя.

1 Ответ

3 голосов
/ 30 марта 2012

Глядя на документацию для split, она работает на посимвольной основе, рассматривая строку как последовательность символов. Поэтому предикат, который он использует для определения того, является ли что-то разделителем, может проверять только один символ, поэтому, если вы хотите разбить целую строку, вам понадобится использовать что-то еще. Библиотека регулярных выражений, безусловно, сможет это сделать, но вы можете довольно легко вручную написать ее, выполнив поиск подстрок.

...