25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

478 Въведение в програмирането със C#<br />

разлика за малки и главни букви. Например ако имаме входен панел на<br />

потребителя, в който въвеждаме име и парола, и няма значение дали<br />

паролата е написана с малки или с главни букви, може да направим<br />

подобна проверка на паролата:<br />

string pass1 = "Parola";<br />

string pass2 = "PaRoLa";<br />

string pass3 = "parola";<br />

Console.WriteLine(pass1.ToUpper() == "PAROLA");<br />

Console.WriteLine(pass2.ToUpper() == "PAROLA");<br />

Console.WriteLine(pass3.ToUpper() == "PAROLA");<br />

// Console output:<br />

// True<br />

// True<br />

// True<br />

В примера сравняваме три пароли с еднакво съдържание, но с различен<br />

регистър. При проверката съдържанието им се проверява дали съвпада<br />

побуквено със символния низ "PAROLA". Разбира се, горната проверка<br />

бихме могли да направим и чрез метода Equals(…)във варианта с игнориране<br />

на регистъра на символите, който вече разгледахме.<br />

Търсене на низ в друг низ<br />

Когато имаме символен низ със зададено съдържание, често се налага да<br />

обработим само част от стойността му. .NET платформата ни предоставя два<br />

метода за търсене на низ в друг низ: IndexOf(…) и LastIndexOf(…). Те<br />

претърсват даден символен низ и проверяват дали подаденият като<br />

параметър подниз се среща в съдържанието му. Връщаният резултат от<br />

методите е цяло число. Ако резултатът е неотрицателна стойност, тогава<br />

това е позицията, на която е открит първият символ от подниза. Ако<br />

методът върне стойност -1, това означава, че поднизът не е открит.<br />

Напомняме, че в C# индексите на символите в низовете започват от 0.<br />

Методите IndexOf(…) и LastIndexOf(…) претърсват съдържанието на текстова<br />

последователност, но в различна посока. Търсенето при първия метод<br />

започва от началото на низа в посока към неговия край, а при втория метод<br />

– търсенето се извършва отзад напред. Когато се интересуваме от първото<br />

срещнато съвпадение, използваме IndexOf(…). Ако искаме да претърсваме<br />

низа от неговия край (например, за откриване на последната точка в името<br />

на даден файл или последната наклонена черта в URL адрес), ползваме<br />

LastIndexOf(…).<br />

При извикването на IndexOf(…) и LastIndexOf(…) може да се подаде и втори<br />

параметър, който указва от коя позиция да започне търсенето. Това е<br />

полезно, ако искаме да претърсваме част от даден низ, а не целия низ.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!