Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

Foxpro


Qdidactic » stiinta & tehnica » informatica » foxpro
Tipul sir de caractere - operatii asupra datelor de tip sir



Tipul sir de caractere - operatii asupra datelor de tip sir



Un sir de caractere reprezinta o multime ordonata de caractere care se trateaza ca un tot unitar. Intr-un sir de caractere ordinea acestora fiind esentiala, fiecarui caracter I se poate asocia un numar reprezentand pozitia aceastuia in cadrul sirului.

Numarul caracterelor dintr-un sir reprezinta lungimea sirului. Un subsir al sirului dat repreuinta o portiune din sir, incepand de la o pozitie specificata si de lungimea data

Constantele de tip sir de caractere se specifica prin multimea caracterelor care le compun, incadrate intre apostrofuri simple sau duble ( la ambele capete trebuie sa fie acelasi tip de apostrof ).

Pentru a include unul dintre cele doua delimitatoare intr-un sir de caractere, multimea caracterelor ce alcatuiesc sirul va fi incadrata intre delimitatorul de celalalt tip decat cel din sir. Daca lungimea sirului este 0 obtinem sirul vid sau nul, care se specifica prin doua apostrofuri consecutive fara spatii sau alte caractere intre ele.

Datele de tip sir de caractere pot avea lungimea maxim 255 caractere ASCII si se reprezinta intern cate un caracter pe octet in binar.


Operatii asupra datelor de tip sir


- concatenarea a doua siruri se realizeaza prin operatorii de concatenare (+, -); (+) realizeaza concatenarea a doua siruri;

Exemplu: “ strada _ “ + “ George _ Cosbuc “



Dupa evaluare, va avea valoarea:

“ strada _ George _ Cosbuc “

Operatorul (-) realizeaza concatenarea termenilor cu mutarea spatiilor de la sfarsitul primului sir la sfarsitul sirului rezultat.

Exemplu: “ Salut “ - “ prieteni !“

Dupa evaluare, vom obtine sirul de caractere

“ Salut prieteni ! “

se observa ca blancurile de la inceputul sirului al doilea isi pastreaza pozitia in sir.

- testarea apartenentei unui sir la un alt sir este realizata prin operatorul ($); poate fi folosit in expresii logice.

De exemplu, expresia:

“ calcul “   $ “ calculator “

este adevarata, pe cand expresia:

“ calcule “ $ “ calculator “

va fi evaluata la valoarea logica fals.


Compararea sirurilor de caractere de lungimi diferite este controlata de comanda :


SET EXACT ON / OFF


In starea ON sirurile se compara de pe toata lungimea lor (cu exceptia spatiilor de la sfarsitul sirului). In starea OFF se ia lungimea cea mai scurta si, daca pe aceeasi lungime sirurile sunt egale, rezultatul este .T..


Functii uzuale asupra sirurilor

SUBSTR (<eC>, <eN1>,<eN2>)

extrage un subsir din sirul <eC> incepand cu

caracterul de pe pozitia <eN1> pe lungime

<eN2>

LEFT (<eC>, <eN>)

extrage primele <eN> caractere din sirul <eC>

RIGHT (<eC>, <eN>)

extrage ultimele <eN> caractere din sirul <eC>

LEN (<eC>)


intoarce lungimea sirului <eC>

REPLICATE (<eC>, <eN>)

intoarce un sir avand <eC> multiplicat de

<eN> ori

SPACE (<eN>)

Intoarce un sir de <eN> spatii


LTRIM (<eC>)

elimina spatiile de la stanga sirului <eC>

ex.: LTRIM(’MIA’)=”MIA”

RTRIM (<eC>)/ TRIM (<eC>)

elimina spatiile de la dreapta sirului <eC>

ex.: RTRIM(“MAI”’)=”MAI”

AT (<eC1>, <eC2>)

intoarce pozitiile sirului <eC1> in <eC2>


ISALPHA (<eC>)

testeaza daca sirul incepe cu o litera


ISLOWER (<eC>)

testeaza daca sirul incepe cu minuscula


ISUPPER (<eC>)

testeaza daca sirul incepe cu majuscula


LOWER (<eC>)

transforma sirul in minuscule


UPPER (expC)

transforma sirul in majuscule


STUFF (<eC1>, <eN1>, <eN2>, <eC2>)

inlocuieste in <eC1> incepand cu pozitia

<eN1> un subsir de lungime <eN2> prin

sirul <eC2>

CTOD (<eC>)

realizeaza conversia unui sir la data

calendaristica

VAL (<eC>)

realizeaza conversia unui sir la numar

Exemple:

? CHR ( 49 )


? CHR ( 65 ) == “ A “

. T .

? ASC ( “ A “ )


? ASC ( “ a “ ) = ASC ( alfa )

. T .

? “ A “ == CHR ( ASC ( “ A “ ) )

. T .

? 65 == ASC ( CHR ) 65 ) )

. T .

? SUBSTR ( “ ABCDEF “ , 2, 3 )

BCD

? SUBSTR ( “ Ziua Buna “ , 6 )

Buna

? LEFT ( “ La multi ani ! “ , 2 )

La

? RIGHT ( “ Noapte buna ! “ , 6 )

buna !

? REPLICATE ( “ a “ , 5 )

a a a a a

? REPLICATE ( “ “ , 6 ) == SPACE ( 6 )

. T .

? ALLTRIM GAMA “ ) == “ GAMA “

. T .

? “ Ma numesc “ + RTRIM ( “ Ionescu “ ) + “ Daniel “

Ma numesc Ionescu Daniel

? “ si am “ + LTRIM ( “ 24 “ ) + “ ani. “

si am 24 ani

? AT ( “ nr. “ , “ Strada George Cosbuc, nr. 63 – 64


? LEN ( “ Salutari ! “ )


? LEN ( “ Strada George Cosbuc “ + “ nr. 150


a = “ ALFA “

b = “ alfa “

? UPPER ( a ) == UPPER ( b )

. T .

? LOWER ( a ) == LOWER ( b )

. T .

STORE “ pala “ TO sir

sir = STUFF ( sir , 3 , 0 , “ rale “ )

? sir

paralela

sir = STUFF ( sir , 3 , 3 , “ sar “ )

? sir

pasarela

sir = STUFF ( sir , 7 , 2 , “ “ )

? sir

pasare






Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright