Miten merkkijonosta poistetaan välilyönti /tab merkit
välilyönti/tab-merkit
kyysyy
8168
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 8
Vanhimmat
hexdump -C tiedosto_jossa_merkkejä_välilyöntejä_ja_tab_merkkejä.txt
Function IlmanTabia(s : String) : String;
var t : String;
Begin
t:='';
for i:=1 to length(s) do if mid(s, i, 1)<>char(9) t:=mid(s, i, 1) end;
IlmaTabia : t;
End;
t:=t mid(s, i, 1)
IlmaTabia : =t;
Tarkoitit siis tälläistä:
function IlmanTabia(s : String) : String;
var
t : String;
i : integer;
begin
t := '';
for i := 1 to length(s) do
if AnsiMidStr(s, i, 1) <> #9 then t := t AnsiMidStr( s, i, 1 );
result := t;
end;
// AnsiMidStr löytyy StrUtils käännösyksiköstä
http://www.freepascal.org/docs-html/rtl/strutils/ansimidstr.html
AnsiMidStr on hidas, onko tuo jotain Visual Basic -tyyliä.
Function deltab(s: string) : string;
var c: char;
Begin
result := '';
for c in s do if c <> #9 then result := result c;
End;
tai
Function deltab2(s: string) : string;
var i: integer;
Begin
result := '';
for i to length(s) do if s[i] <> #9 then result := result s[i];
End;
tahi
Function deltab3(s: string) : string;
var i: integer;
Begin
repeat
i:= pos(#9, s);
if i= 0 then break;
delete(s, i, 1);
until false;
result := s;
End;
Free Pascal:n strutils kirjastossa on mm funktiot
- DelSpace tuhoaa välilyönnit
http://www.freepascal.org/docs-html/rtl/strutils/delspace.html
- DelChars tuhoaa annetun merkin esiintymät
http://www.freepascal.org/docs-html/rtl/strutils/delchars.html
Tässäkin itse asiassa nähdään, kuinka ohjelmoijaa yritetään viedä pascal:ssa oikeaan suuntaan, eli käyttämään erillisiä esitysmuotoa ja datan käsittelymuotoa. Merkkijonojen skannaaminen edes takas kun on hidasta. Oikea tapa on pitää tabuloinnit taulussa ja ihan perustyyppeinä. Sitten vasta tehdä esitystapamuunnos kun tietoa pitää jossakin muodossa käyttäjälle näyttää.