понеделник, септември 12, 2005

Ляво - Между- Дясно от стринг

Едно от нещата, които не харесвам в C# беше че ми се налагаше да използвам 'substring" метода на всякъде . Аз съм мързелив програмист и това не и хареса. Трябваше да напиша няколко реда код за да валидирам текст преди да мога да извикам метод без да ми хвърли exception.

Но разбира се от Микрософт са направили string класа 'sealed' така че да не може да го наследяваме и да добавяме функционалност.
Ето ви код, който може да компиларате в библиотека и да го връзвате към приложенията си . Много е удобно :). В повече към методите, които идват със string класа съм добавил Length метод, който проверява за валиден string и връща неговата дължина.


public class StringPro
{
public static string Left(string text, int letters)
{
string returnString = string.Empty;
int len = Length(text);

if(len > 0)
{
len = (len > letters) ? letters : len;
returnString = text.Substring(0,len);
}

return returnString;
}

public static string Mid(string text, int start)
{
return Mid(text,start,int.MinValue);
}

public static string Mid(string text, int start, int end)
{
string returnString = string.Empty;

int len = Length(text);

if(len > 0 && len > start)
{
len = len > (start+end) && end != int.MinValue ? end : len-start;
returnString = text.Substring(start,len);
}

return returnString;
}

public static string Right(string text, int letters)
{
string returnString = string.Empty;

int len = Length(text);

if(len > 0)
{
int count = len >= letters ? letters : len;
returnString = text.Substring(len - count, count);
}

return returnString;
}

public static int Length(string text)
{
return (text==null text==string.Empty) ? 0 : text.Length;
}
}

Няма коментари: