PDA

View Full Version : سوال: اشکال در regular expression



naeeme
چهارشنبه 08 خرداد 1387, 14:51 عصر
من می خوام یکی از فیلدهام که از ورودی پر میشه، فقط دارای مقادیر الفبایی باشه. از عبارات با قاعده استفاده کردم که به صورت زیر نوشتم:


[a-zA-Z]{1,}

اما نمی دونم چرا اگر مقداری به صورت مثلا f7 وارد کنم، regex مقدار true برمی گردونه.

آیا برای استفاده از کلاس Regex باید روش خاصی رو استفاده کنم یا عبارتی که نوشتم خطا داره؟

Mahdi.Kiani
چهارشنبه 08 خرداد 1387, 15:24 عصر
عبارت شما به محضی که یک کاراکتر الفبایی دریافت کنه، نتیجه موفقیت آمیز خواهد بود
پس f7 نتیجه درستی میده به دلیل وجود f
البته راه های دیگری هم وجود داره
مثلا اینکه اجازه وارد کردن چیزی غیر از حرف را به کاربر ندید.. این روش به نظر من خیلی بهتره
در مورد چگونگی انجام اون هم بار ها گفته شده.. با کمی جستجو می تونید پیدا کنید
موفق باشید

naeeme
چهارشنبه 08 خرداد 1387, 21:59 عصر
یعنی واقعا نمیشه با یک regular expression این کار رو انجام داد؟؟؟
روش پر شدن فیلد من مشخص نیست، ممکنه از یک فایل باشه یا از یک text box یا از فیلد یک DB. پس باید روشی باشه که بتونه خودش تشخیص بده که واقعا ورودی معتبر هست یا نه.

mdssoft
چهارشنبه 08 خرداد 1387, 23:14 عصر
برای تشخیص چیزی شبیه F7 فکر کنم pattern زیر کار کنه :



[A-Za-z]+[^0-9]

naeeme
شنبه 11 خرداد 1387, 09:47 صبح
برای تشخیص چیزی شبیه F7 فکر کنم pattern زیر کار کنه :



[A-Za-z]+[^0-9]


F7 خطای ورودی هست نه تقاضا. ورودی نباید شامل کاراکترهایی جز حروف الفبا باشه

Behrouz_Rad
شنبه 11 خرداد 1387, 13:32 عصر
درست نوشتی اما برای ابتدا و انتهای رشته، قانونی مشخص نکردی!


^[A-Za-z]+$


موفق باشید.