dorit
meir

  • Principal
  • Inglês
  • História Antiga
  • Italiano
  • Respostas
  • Animais E Natureza
  • Matemática
  • Ciências Sociais
  • Histórias
  • Para Educadores
  • Problemas

Copyright ©
Todos Os Direitos Reservados

dorit-meir.com

Ciência Da Computação

Como analisar uma string delimitada em uma lista de strings

Homem negro usando laptop em cafeteria

Roberto Westbrook / Getty Images





Há muitas vezes em que você precisa dividir um corda em um

O Delphi fornece vários métodos para analisar uma string, mas você pode descobrir que nenhum deles faz exatamente o que você precisa. Por exemplo, o método RTL ExtractStrings sempre usa caracteres de aspas (simples ou duplas) para delimitadores. Outra abordagem é usar o Delimitador e Texto Delimitado propriedades da classe TStrings—mas infelizmente, há um bug na implementação ('dentro' do Delphi) onde o caractere de espaço é sempre usado como delimitador.



A única solução para analisar uma string delimitada é escrever um método próprio:

Exemplo de string delimitada

~~~~~~~~~~~~~~~~~~~~~~~~~~
procedimento ParseDelimited(const sl : TStrings; valor const : string; delimitador const : string) ;
foi
dx : inteiro;
ns : cadeia;
txt: cadeia;
delta : inteiro;
começar
delta := Comprimento(delimitador);
txt := valor + delimitador;
sl.BeginUpdate;
sl.Limpar;
tentar
enquanto Comprimento(txt) > 0 faça
começar
dx := Pos(delimitador, txt);
ns := Copiar(txt,0,dx-1) ;
sl.Add(ns) ;
txt := Copiar(txt,dx+delta,MaxInt) ;
fim;
finalmente
sl.EndUpdate;
fim;
fim;
~~~~~~~~~~~~~~~~~~~~~~~~~~

Uso (preenche Memo1):
ParseDelimited(Memo1.lines,'Zarko;Gajic;;DelphiGuide',';')

Não Deixe De Olhar

Endogamia: Definição e Efeitos Genéticos

Biografia de Martha Carrier, bruxa acusada

Escreva caracteres chineses usando pinyin e método de entrada fonética

Registros e Índices de Óbitos Online

O Império Holandês: Três Séculos em Cinco Continentes

Cores mandarim

Tabela de conjugação do verbo italiano 'Dormire'

Universidade Estadual de Utah: Taxa de Aceitação e Estatísticas de Admissão

Como dizer obrigado em japonês

Como usar citações em bloco na escrita

Jogos de preenchimento de tempo para todas as salas de aula

Problema de Exemplo de Energia de Frequência

Mary Surratt: Executada como Conspiradora no Assassinato de Lincoln

Como dizer comandos negativos em italiano

As 9 melhores universidades para fãs de Star Wars