Novo

Forum kao aplikacija na telefonu

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

  • 8 odgovora
  • 4.510 pregleda

Najnovija ↓

Oduzimanje karaktera na kraju stringa 13.01.2006. u 00:32 · pre 253 meseca #1
Kako da oduzmem samo jedan karakter sa kraja stringa (tj. prvi karakter
sa desna)? Radi se u BCB.
Npr. imam string "ovo je string", a treba mi "ovo je strin".
Ovo mi je potrebno radi oduzimanja zareza kod sklapanja relacionih upita.
Potpis
Ag + Na -> Xe
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 01:34 · pre 253 meseca #2
ako je u pitanju AnsiString onda pokusaj sa npr.

Edit1->Text=Edit1->Text.SetLength(Edit1->Text.Length()-1);

jesi na AnsiString mislio?
Potpis
there's something out there
waiting for us,
and it ain't no man...
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 11:17 · pre 253 meseca #4
dobro, nekoliko stvari se podrazumjevaju...

Potpis
there's something out there
waiting for us,
and it ain't no man...
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 15:31 · pre 253 meseca
izmenjeno 1 put, poslednji put X Files 13.01.2006. u 15:34
  1. X Files13.01.2006. u 15:34zapis iz teksta poruke
#6
Treba ovako:
Code:

AnsiString NekiString = "abcdefgh";
NekiString.SetLength( NekiString.Length() - 1 );



Citat:

string[strlen(string)-1] = 0;

Ovo nije dobro kada su u pitanju AnsiString-ovi, koje koristi BCB. AnsiString je klasa.
Tako da ta NULA nije terminator AnsiString-a (nisam probao ali sam skoro siguran u to).
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 16:31 · pre 253 meseca #7
Primer sa Edit1->Text radi bas kako treba,ali ja koristim onaj std::string,
dodeljujem im vrednosti u if uslovima i onda ih direktno sabiram i tako stavljam
u upit:
std::string trazi_se = param1 + param2 + param3 + ... + paramN;
Svi su tipa std::string.
Ovaj kod:
Code:

std::string trazi_se;
trazi_se=trazi_se.c_str()[strlen(trazi_se.c_str())-1];

vraca SAMO zarez! (Znaci poslednji karakter u stringu).
(Tako vam je to kada ste amater-Bugs Bunny).
Potpis
Ag + Na -> Xe
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 18:45 · pre 253 meseca
izmenjeno 1 put, poslednji put X Files 13.01.2006. u 19:01
  1. X Files13.01.2006. u 19:01zapis iz teksta poruke
#8
std je potpuno druga stvar (koja nema veze sa BCB AnsiString-ovima)


// NETESTIRANO:

Code:

#include <string>
using namespace std;
// ...
std::string moj_string = "abc";
moj_string.resize(moj_string.length()-1);
// ...


ili (valjda)

Code:

// Powered by Kiklop74
std::string moj_string= "abc"; // std::string moj_string( "abc" );
moj_string.erase(moj_string.length()-1);
Re: Oduzimanje karaktera na kraju stringa 13.01.2006. u 19:10 · pre 253 meseca
izmenjeno 1 put, poslednji put Mr. Rejn 13.01.2006. u 19:14
  1. Mr. Rejn13.01.2006. u 19:14zapis iz teksta poruke
#9
Citat:

Code:

#include <string>
using namespace std;
// ...
std::string moj_string = "abc";
moj_string.resize(moj_string.length()-1);
// ...


To je to, radi i jedno i drugo (resize i erase). Puno hvala.
Poz.
Potpis
Ag + Na -> Xe
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme