Neste artigo, exploraremos algumas das maneiras comuns para Divida uma corda usando um delimitador em c++.
Strings divididos usando delimitador em C++
Em C ++, existem várias abordagens para quebrar uma string usando um delimitador, incluindo:
1: Usando as funções find () e substr ()
Uma string pode ser dividida usando as funções C ++ encontrar() e substr (). A primeira instância de uma substring está localizada usando o encontrar() método. Se não houver mais ocorrências, a parte restante da corda será devolvida após ser colocada no vetor. A substring que começa no início do texto e terminando no delimitador pode ser extraída usando o substr () função. Podemos continuar fazendo isso até que todas as substâncias sejam obtidas.
Aqui está um exemplo C ++ de como Divida uma corda usando um delimitador:
#incluirNo exemplo acima, uma string chamada "STR" e um delimitador nomeado “Delimitador” são definidos. As substringas de "STR" são então extraídos usando um loop de tempo. A localização do delimitador é devolvida pelo encontrar() método, ou std :: string :: npos Se não puder ser localizado. A substring desde o início de "STR" até o delimitador é extraído usando “Substr ()” neste local, e então é impresso no console. A substring extraída e o delimitador são então retirados de "STR" usando o "apagar()" função. Uma vez que não há mais delimitadores em "STR", Repetimos esta operação. Depois, produzimos a última substring "cereja" para o console.
Saída
2: Usando a função strtok ()
O strtok () A função é outra função em C ++ que pode efetivamente dividir as strings usando um delimitador em qualquer programa C ++. Ele retira duas entradas; a string a ser dividida e o personagem delimitador. Aqui está uma implementação de strtok () função em c ++:
#incluirO strtok () A função é usada no código acima para quebrar uma sequência de entrada fornecida pelo usuário em tokens, usando uma vírgula e um espaço como delimitadores. Em seguida, ele publica cada token no console em uma linha separada. Isso é realizado armazenando a sequência de entrada em uma matriz de char, iterando os tokens com um ponteiro de char e depois dividindo a corda repetidamente até que todos os tokens tenham sido exibidos.
Saída
3: Usando a classe StringStream
Usando o Classe é outra técnica para dividir uma corda em C++. É possível inserir e sair dados formatados, incluindo strings, usando esta classe. Uma string que está sendo manipulada como um fluxo pode ter substâncias extraídas dele usando o Obter linha() método. O Obter linha() Método extrairá a substring até o delimitador se fornecermos o delimitador como um parâmetro.
Aqui está uma ilustração de como Divida uma corda em C++ usando o StringStream () função.
#incluirNo código acima, um caractere delimitador é usado para dividir uma sequência de entrada em tokens usando . Antes de extrair cada token do Usando o delimitador, o programa inicializa um Objeto com a sequência de entrada. Um vetor de cordas é então expandido por cada token. O programa então percorre o vetor, imprimindo cada token para o console no final.
Saída
Conclusão
A divisão de uma corda usando um delimitador é uma abordagem eficaz no C ++ e existem várias funções internas no C ++ que possibilitam a divisão de strings. Essas funções incluem encontre (), substr (), strtok () e Fream aula. Os desenvolvedores devem considerar os requisitos específicos de sua aplicação e escolher a função que melhor funciona para eles.