Siruri de caractere

Avand in vedere ca sirurile de caractere pot contine date intr-o combinatie foarte variata, AutoIt dispune de un set de functii, atat native cat si user-defined, pentru managementul sirurile.

 

  1. Functii native pentru managementul sirurilor de caractere

AutoIt are aproximativ 30 functii native cu acest scop dar in acest tutorial vom vorbi doar despre cele mai uzuale.

 

a)      StringInStr

Verifica daca un sir contine un alt sir dat. Functia are 6 parametri, primii 2 sunt sirul in care se cauta si sub-sirul cautat, ultimii 4 sunt optionali si se refera la optiunile de cautare (case-sensitive, ocurenta, pozitia de incepere a cautarii si numarul de caractere cautate). Functia returneaza pozitia sub-sirului in caz de succes sau 0 in cazul in care sub-sirul nu este gasit.

In acest exemplu am folosit si un parametru optional pentru a efectua o cautare case sensitive.

 

b)      StringLeft

Returneaza un numar de caractere din partea stanga a unui sir. Are 2 parametri, sirul si numarul de caractere.

c)      StringMid

Returneaza un numar de caractere dintr-un sir, incepand de la pozitie si luand un numar de caractere. Are 3 parametri, sirul, pozitia in sir si numarul de caractere.

d)      StringRight

Returneaza un numar de caractere din partea dreapta a unui sir. Are 2 parametri, sirul si numarul de caractere.

e)      StringTrimLeft

Taie un numar de caractere din partea stanga a unui sir. Are 2 parametri, sirul si numarul de caractere.

f)        StringTrimRight

Taie un numar de caractere din partea dreapta a unui sir. Are 2 parametri, sirul si numarul de caractere.

g)      StringLen

Returneaza numarul de caractere ale unui sir. Are ca parametru sirul de caractere.

h)      StringLower

Face conversia unui sir in caractere minuscule. Are ca parametru sirul de caractere.

i)        StringUpper

Face conversia unui sir in caractere majuscule. Are ca parametru sirul de caractere.

j)        StringReplace

Inlocuieste un sub-sir intr-un sir. Functia are 5 parametri, primii 3 sunt sirul in care se face substitutia, sub-sirul care va fi inlocuit si noul sub-sir, iar ultimii 2 parametri (optionali) se refera la ocurente si la modul de substitutie (daca este sau nu case-sensitive).

Nota: dupa apelarea functiei macro-ul @extended va contine numarul de substitutii efectuate.

 

k)      StringSplit

Imparte un sir de caractere pe baza unui caracter de delimitare(flag=0) sau un grup de caractere (flag=1). Functia returneaza un vector care va contine sub-sirurile. Primul index al vectorului va contine numarul de sub-siruri (in cazul in care nu este setat flag=2, cand in vector vor fi doar sub-sirurile incepand de la index 0). Functia are 3 parametri, primii 2 sunt sirul si delimitatorul iar al treilea (optional) este indicatorul (flag).

Nota: daca se foloseste ca delimitator un empty string, fiecare caracter din sir va fi returnat ca un element.

 

l)        StringStripCR

Sterge caracterele @CR (ASCII 13) dintr-un sir de caractere. Are ca parametru sirul de caractere.

m)    StringStripWS

Sterge spatiile libere dintr-un sir de caractere, in acord cu parametrul flag. Functia are 2 parametri, sirul de caractere si un indicator (flag). Posibilele valori pentru parametrul flag sunt:

1

Sterge spatiile libere de la inceputul sirului

2

Sterge spatiile libere de la sfarsitul sirului

4

Sterge spatiile libere duble (sau mai multe)

8

Sterge toate spatiile libere

 

  1. Functii user-defined pentru managementul sirurilor de caractere

AutoIt are dispune si de un set de functii user-defined, pentru managementul sirurilor de caractere, pe care le puteti gasi in fisierul antet String.au3. Acest fisier contine 9 functii dar in acest tutorial vor fi tratate doar cele mai importante.

 

a)      _StringBetween

Rreturneaza un sub-sir dintr-un sir, marginit de doua sub-siruri. Functia are 4 parametri, primii 3 sunt: sirul, sub-sirul de inceput si sub-sirul de final, iar ultimul parametru (optional) indica daca cautarea sub-sirului se face case-sensitive. Rezultatul functiei va fi un vector cu toate sub-sirurile aflate.

b)      _StringRepeat

Repeta un sir de caractere de un numar specificat de ori. Functia are 2 parametri: sirul de caractere si numarul de ori de care va fi repetat.

 

c)      _StringReverse

Returneaza un sir de caractere inversat. Functia are ca parametru sirul de caractere.


* Pentru orice intrebari sau nelamuriri legate de curs sau limbajul AutoIt accesati sectiunea AutoIt a forumului SkullBox sau platforma de suport tehnic NetHelp.