ultra 0 Denunciar post Postado Julho 28, 2004 Bom dia pessoal, estou eu com um pequeno problema, e cá estou para pedir uma ajuda amiga... Bom, tenho um arquivo.TXT e gostaria de buscar uma palavra dentro dele, vou dar o exemplo: <FONT COLOR=RED>Were summarized <FONT COLOR=WHITE >7</FONT> frames of left</FONT><BR> <TABLE> <TR><TH COLSPAN=4><FONT COLOR=WHITE>Final decision.</FONT></TH></TR> <TR> <TD WIDTH="25%" ALIGN="CENTER" BGCOLOR=GRAY><FONT COLOR=WHITE>Final</FONT></TD> </TR> quero jogar a posição ou as palavras da linha vermelha numa variável, ou dentro de algum Memo..... tem como fazer isso ? o máximo q consegui foi jogar todo o .txt numa só variável, mas não ajudou muito Agradeço desde já !!! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
ultra 0 Denunciar post Postado Julho 28, 2004 Pra simplificar minha dúvida : como faço pra pegar uma letra dentro de uma variável, numa posição x ?? Compartilhar este post Link para o post Compartilhar em outros sites
WiCkEd 0 Denunciar post Postado Julho 29, 2004 por exemplo: você joga esse código html dentro de um MEMO e veja este código var i,j:integer; linha:string; begin for i:=0 to memo.lines.count-1 do begin linha:=memo1.lines.strings; for j=1 to length(linha) do //suponha que essa linha j é a linha <TD WIDTH="25%" ALIGN="CENTER" BGCOLOR=GRAY> e você queira encontrar WIDTH if copy(linha, j,5) then //copia da posicção jota 5 caracteres que é o tamanh o da palavra WIDTH showmessage(copy(linha, j,5));//só um exemplo você faz o q quiser, copia o valor 25%, a lógica eu já te passei end; end; bom isso aí, espero que tenha dado pra você pegar a lógica da coisa, qualquer coisa pergunta ae ;) Compartilhar este post Link para o post Compartilhar em outros sites
ultra 0 Denunciar post Postado Julho 29, 2004 Valeu WiCkEd !! é isso mesmo q eu queria....... com algumas poucas alterações..... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Mas só tem 1 probleminha...... quando eu faço : ASP [/tr][tr]copy(linha, j,5)[/tr] ele manda o resultado como string, certo ?? eu queria checar pra ver se essa letra é numérico, então eu tentei fazer : ASP [/tr][tr]If StrToInt(copy(linha, j,1)) in [0..9] then[/tr] Mas ele diz q não é compativel tipos String e Integer :o .......... você sabe o por quê ? Compartilhar este post Link para o post Compartilhar em outros sites
WiCkEd 0 Denunciar post Postado Julho 29, 2004 é que não tenho certeza, mas acho que o in['0'..'9'] só vale se comparado a um único caracter, por exemplo if linha[j] in [0..9] then mas tem um erro no seu, você está tentando converter a string antes de saber se ela é realmente numero If StrToInt(copy(linha, j,1)) in [0..9] then tente assim If copy(linha, j,1) in [0..9] then Se não funcionar, a solução é try strtofloat(copy(linha, j,1)); showmessage('é numerico'); except showmessage('não é numérico'); end; ou seja ele tenta converter, se não conseguir ele diz q não é numerico, mas fique atento, você só verá isso se executar o programa fora do Delphi, se você der um F9, (rodar em modo debug) ele acusa erro de conversao ;) Compartilhar este post Link para o post Compartilhar em outros sites
ultra 0 Denunciar post Postado Julho 29, 2004 Opa, valeu denovo WiCkEd...... vou tentar essa solução mesmo eu tava usando uma solução bem porca: ASP [/tr][tr] if (copy(linha, j, 1) = '0') or (copy(linha, j, 1) = '1') or (copy(linha, j, 1) = '2') or (copy(linha, j, 1) = '3') or (copy(linha, j+k, 1) = '4') or (copy(linha, j, 1) = '5') or (copy(linha, j, 1) = '6') or (copy(linha, j+, 1) = '7') or (copy(linha, j, 1) = '8') or (copy(linha, j, 1) = '9') then[/tr] Ahuaeuhauh..... era provisória, só até achar o modo ideal http://forum.imasters.com.br/public/style_emoticons/default/hug.gif Compartilhar este post Link para o post Compartilhar em outros sites