You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Глава 13. Символни низове 485<br />
Настоящата тема няма за цел да обясни как се работи с регулярни изрази<br />
в .NET Framework, тъй като това е голяма и сложна материя, а само да<br />
обърне внимание на читателя, че регулярните изрази съществуват и са<br />
много мощно средство за текстообработка. Който се интересува повече,<br />
може да потърси статии, книги и самоучители, от които да разучи как се<br />
конструират регулярните изрази, как се търсят съвпадения, как се прави<br />
валидация, как се правят замествания по шаблон и т.н. По-конкретно<br />
препоръчваме да посетите сайтовете http://www.regular-expressions.info/ и<br />
http://regexlib.com/. Повече информация за класовете, които .NET<br />
Framework предлага за работа с регулярни изрази и как точно се използват,<br />
може да бъде открита на адрес: http://msdn.microsoft.com/enus/library/system.text.regularexpressions.regex%28VS.100%29.aspx.<br />
Премахване на ненужни символи в началото и в<br />
края на низ<br />
Въвеждайки текст във файл или през конзолата, понякога се появяват<br />
"паразитни" празни места (white-space) в началото или в края на текста<br />
– някой друг интервал или табулация, които може да не се доловят на пръв<br />
поглед. Това може да не е съществено, но ако валидираме потребителски<br />
данни, би било проблем от гледна точка на проверка съдържанието на<br />
входната информация. За решаване на проблема на помощ идва методът<br />
Trim(). Той се грижи именно за премахването на паразитните празни места<br />
в началото или края на даден символен низ. Празните места могат да бъдат<br />
интервали, табулация, нови редове и др.<br />
Нека в променливата fileData сме прочели съдържанието на файл, в който<br />
е записано име на студент. Пишейки текста или преобръщайки го от един<br />
формат в друг, може да са се появили паразитни празни места и тогава<br />
променливата ще изглежда по подобен начин:<br />
string fileData = " \n\n Ivan Ivanov ";<br />
Ако изведем съдържанието на конзолата, ще получим 2 празни реда,<br />
последвани от няколко интервала, търсеното от нас име и още няколко<br />
допълнителни интервала в края. Можем да редуцираме информацията от<br />
променливата само до нужното ни име по следния начин:<br />
string reduced = fileData.Trim();<br />
Когато изведем повторно информацията на конзолата, съдържанието ще<br />
бъде "Ivan Ivanov", без нежеланите празни места.<br />
Премахване на ненужни символи по зададен списък<br />
Методът Trim(…) може да приема масив от символи, които искаме да<br />
премахнем от низа. Това може да направим по следния начин: