سوال درباره ی Compare کردن در سی شارپ

#C

توسط thearrow در 5 سال پیش
0 823 4 5 سال پیش
thearrowdanielmicrosoftman
0

سلام میخواستم بدونم که این Compare چیه ؟ با یکی از ترکیه داشتم چت میکردم که بهم گفت Compare کن ، جریانه این چیه ؟

میخواست یک برنامه واسش بسازم که یک لیست رو Import کنه و اون هایی که کل حروف هاشون از این ها حروف ها تشکیل شده اند رو پاک کنه در لیست ، حروف ها از Aتا z و از 0 تا 9 و _-)(*$!~=+

بهم گفت که اگه لیست باکسی که Import شده ، یک یا چند حرفش این حروف ها رو نداشت بهشون کاری نداشته باشه ، ولی اگه این ها تمام حروفشون باشه مثلا softafzar یا pashmak که کل حروف های غیر مجاز (غیر مجاز در این نرم افزار)هست رو دارن رو پاک کنه

ممنون میشم کمکم کنید

0

compare یعنی مقایسه همون کاری که دستورات شرطی مثل if، switch و.. انجام میدن

برای اینکار راههای متفاوتی وجود داره اما بهترین راه استفاده از Regex ـه

[CSHARP] if (Regex.IsMatch(textBox1.Text, @"^[a-zA-Z0-9-_$()+=~!]$")) { Text = "forbidden";

            }
            else
            {
                Text = "clean";
            }[/CSHARP]

شاید ساخت پترن برای Regex کمی سخت باشه اما اموزش وجود داره و برنامه هایی هم برای اینکار هستنRegExr

0

یک دنیا سپاس فقط یک سوال دارم ، دلیل خاصی داره که حروف ها رو به این شکل نوشتی؟ چون من اینجوری نوشتم دیگه کار نداد و هرچی توی تکست باکس بنویسم همه رو مج نشده میدونه

[CSHARP] if (Regex.IsMatch(TextBox4.Text, @".,-+=~!$*abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")) listBox1.Items.Add(TextBox4.Text); else listBox2.Items.Add(TextBox4.Text); [/CSHARP]

من فقط حروف های بالا رو میخوام بررسی کنم ،

یک سوال دیگه دارم چرا بعضی از حروف ها رو دوبار تکرار کردید؟

0

با تشکر از دوست عزیزم Microsoft Man دوست عزیز پترن بالا همین کارو انجام میده تو Regex نمیتونی به اینصورت تعریف کنی باید بصورت پترن(pattern) تعریف کنی a-z: از a تا z A-Z: از A تا Z 0-9: از 0 تا 9

یک سوال دیگه دارم چرا بعضی از حروف ها رو دوبار تکرار کردید؟


اگر منظورت علامت بک اسلشه علتش اینه قبل که بعضی از کاراکتر های خاص باید این علامت قرار بگیره
0

با تشکر از دوست عزیزم Microsoft Man دوست عزیز پترن بالا همین کارو انجام میده تو Regex نمیتونی به اینصورت تعریف کنی باید بصورت پترن(pattern) تعریف کنی a-z: از a تا z A-Z: از A تا Z 0-9: از 0 تا 9

یک سوال دیگه دارم چرا بعضی از حروف ها رو دوبار تکرار کردید؟


اگر منظورت علامت بک اسلشه علتش اینه قبل که بعضی از کاراکتر های خاص باید این علامت قرار بگیره

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.

لطفا ابتدا لاگین کنید