Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 12 odgovora
  • 4.660 pregleda

Najnovija ↓

odsecanje stringa sleva do prvog blanko razmaka 28.12.2008. u 20:10 · pre 217 meseci #1
Jel postoji funkcija koja bi odsekla string do prvog blanko raznaka??

string:='odsecanje stringa sleva do prvog blanko razmaka';

a da dobijem

string:='odsecanje';
Re: odsecanje stringa sleva do prvog blanko razmaka 28.12.2008. u 20:31 · pre 217 meseci #2
Pogledaj funkcije: LeftStr() i AnsiPos().

// Borland C++ Builder kod, pod uslovom da 100% postoji blanko.
Code:

#include <StrUtils.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    AnsiString Stari = "odsecanje stringa sleva do prvog blanko razmaka";
    AnsiString Novi = LeftStr( Stari, AnsiPos( " ", Stari ) );
    ShowMessage( Novi );
}

... ako ne znas da li postoji blanko, prvo to proveri (AnsiPos( " ", Stari )) pa tek onda idi u funkciju.

Re: odsecanje stringa sleva do prvog blanko razmaka 28.12.2008. u 20:41 · pre 217 meseci #4
^
Ili, Pascal kod (valjda):
Code:

procedure TForm1.Button1Click(Sender: TObject);
var Stari, Novi : string;
begin
    Stari := 'odsecanje stringa sleva do prvog blanko razmaka';
    Novi := LeftStr( Stari, AnsiPos( ' ', Stari ) - 1 );
    ShowMessage( '>' + Novi + '<');
end;

(dodao sam -1, da ne bi jedan suvisni blanko ostao na desnoj strani)
Re: odsecanje stringa sleva do prvog blanko razmaka 28.12.2008. u 20:45 · pre 217 meseci #5
^
To su obicne VCL funkcije. Ima ih u Help-u. Jedino ne znam da li je potrebno dadati u uses i StrUtils.
Re: odsecanje stringa sleva do prvog blanko razmaka 28.12.2008. u 20:55 · pre 217 meseci #7
Ipak, ne zaboravi da proveris sta vraca AnsiPos()...
Code:

    pozicija := AnsiPos( ' ', Stari );
    if pozicija > 0 then
      begin
          Novi := LeftStr( Stari, pozicija-1 );
          ShowMessage( '>' + Novi + '<');
      end;

Re: odsecanje stringa sleva do prvog blanko razmaka 01.01.2009. u 02:19 · pre 217 meseci #8
Code:

S := 'odsecanje strina';
S := Copy(S, 1, pos(' ', S) - 1);   //ovde S dobija vrednost 'odsecanje'


nadam se da si na to mislio
Re: odsecanje stringa sleva do prvog blanko razmaka 04.01.2009. u 10:45 · pre 216 meseci #9
Imam problem sa izmenom podataka u bazi..

Koristim Mysql bazu imam tabelu lica (id, ime, prezime).
E sad kako da formiram upit da mi izmeni podatke
ja sam ovako radio al uvek mi javlja grske!! gde gresim??

Code:

          upit := 'UPDATE lica SET ';
          upit := upit + 'ime=' + edt_ime.text + ',prezime=' + edt_prezime.text;
          upit := upit + ' WHERE id=' + QuotedStr(edt_id.text); 
          
          query.Close;
          query.SQL.Clear;
          query.sql.text:=upit;
          query.Open;


Re: odsecanje stringa sleva do prvog blanko razmaka 04.01.2009. u 11:53 · pre 216 meseci #11
Greske

Kad koristim query.open

Citat:

Project izmena raised exception class 'EDatabaseError' with message:
:Cannot open a non-select statement


Kad koristim query.execSQL

Citat:

Project izmena raised exception class 'EDatabaseError' with message:
:Error executing query: Unknown column 'jugoslav' in 'field list'
Re: odsecanje stringa sleva do prvog blanko razmaka 04.01.2009. u 14:06 · pre 216 meseci #12
probaj umesto
upit := upit + 'ime=' + edt_ime.text + ',prezime=' + edt_prezime.text;
napisi
upit := upit + 'ime=' + QuotedStr(edt_ime.text) + ',prezime=' +QuotedStr(edt_prezime.text);

Prati debagovanje i vidi kakva je vrednost stringa upit...
Probaj da izvrsis takav upit u nekom od programa gde si kreirao bazu
Potpis
Don't worry be happy
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme