PDA

View Full Version : سوال: استفاده از عبارات با قاعده در C# چه مزیتی دارد؟



فاطمه_14
یک شنبه 31 اردیبهشت 1391, 10:39 صبح
استفاده از عبارات باقاعده (Regular Expertion) در C # چه مزیتی داره؟ آیا سرعت جستجو در این حالت زیاد می شه؟آیا برای استفاده از RegEx نیاز به نرم افزار خاصی است؟

mehdi.mousavi
یک شنبه 31 اردیبهشت 1391, 12:12 عصر
استفاده از عبارات باقاعده (Regular Expertion) در C # چه مزیتی داره؟ آیا سرعت جستجو در این حالت زیاد می شه؟آیا برای استفاده از RegEx نیاز به نرم افزار خاصی است؟

سلام.
شما با استفاده از Regular Expression ها می تونید کد مورد نظرتون رو بسیار سریعتر و در تعداد خطوط کمتری بنویسید. علاوه بر این، وقتی نوشتن این عبارات را فرا بگیرید، می تونید از اونها در "اکثر" زبانهای برنامه نویسی استفاده کنید. اما خوب، استفاده زیاد از RegEx نیز میتونه باعث افت سرعت اجرای برنامه بشه و Resource های بیشتری از سیستم بگیره. نرم افزار رایگان Expresso (http://www.ultrapico.com/Expresso.htm) برای شما امکان نوشتن عبارات مورد نظر و آزمایش اونها رو فراهم می کنه. وقتی Pattern مورد نظر نوشته و آزمایش شد، می تونید با استفاده از کلاس RegEx (http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.aspx) در BCL و متودهای موجود روی اون، از این امکان در نرم افزار مورد نظرتون بهره مند بشید.

موفق باشید.

فاطمه_14
سه شنبه 02 خرداد 1391, 22:52 عصر
میشه در مورد این کد کمی به من توضیح بدید؟به خصوص در مورد توابعSystem.Console.WriteLine و regex
ممنون

string[] sentences =
{
"cow over the moon",
"Betsy the Cow",
"cowering in the corner",
"no match here"
};

string sPattern = "cow";
foreach (string s in sentences)
{
System.Console.Write("{0,24}", s);
if (System.Text.RegularExpressions.Regex.IsMatch(s, sPattern, System.Text.RegularExpressions.RegexOptions.Ignore Case))
System.Console.WriteLine(" (match for '{0}' found)", sPattern);
else
System.Console.WriteLine();
}

tooraj_azizi_1035
یک شنبه 18 تیر 1391, 17:53 عصر
سلام
http://barnamenevis.org/showthread.php?348548-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-System.Text.RegularExpressions&highlight=%DA%A9%D9%84%D8%A7%D8%B3+regex