راکت
حل شده

فیلتر اسم فارسی یا انگلیسی

4 پاسخ

سلام
چطوری و با چه تابعی میشه اسم فارسی و انگلیسی رو اعتبار سنجی کرد؟
یعنی اگر داخل استرینگ special character یا اعداد و ... بود بگه؟

ثبت پرسش جدید

پاسخ‌ها

4
احسان داوری
احسان داوری
@ehsndvr

تخصص: برنامه نویس

بهترین پاسخ

@LinaQuick فقط کافیه یک if تعریف کنید و بگید اگه متنی که کاربر وارد کرده انگلیسی و یا فارسی نبود ، بهش خطا بده. در غیر این صورت مجاز به ادامه کار باشه ، یعنی :

if (!preg_match('/^(?:[A-Za-z]+(?:\s+|$)){2,3}$/',trim($input)) || !preg_match('/^[^\x{600}-\x{6FF}]+$/u', str_replace("\\\\","",$name))){
echo " شما فقط قادر به وارد کردن اسامی انگلیسی و فارسی هستید. "
}
احسان داوری
احسان داوری
@ehsndvr

تخصص: برنامه نویس

سلام شما باید با استفاده از ریجکس ها (Regex) اینکار رو انجام بدید.
کد های نمونه برای زبان اسکریپت نویسی PHP:

برای اسامی انگلیسی
if(preg_match('/^(?:[A-Za-z]+(?:\s+|$)){2,3}$/',trim($input)))

برای اسامی فارسی
if (preg_match('/^[^\x{600}-\x{6FF}]+$/u', str_replace("\\\\","",$name)))

موفق باشید.

Lina
Lina
@LinaQuick

تخصص: برنامه نویس

@ehsndvr خیلی ممنون
فقط اگر بخوام هم انگلیسی مجاز باشه و هم فارسی چیکار باید بکنم؟

شاید پاسخ شما همین‌جا باشد

محمدرضا
محمدرضا
@mrjazini.ir

تخصص: <programmer/>

اینطوری یعنی اعدادو کاراکترهای غیر از حروف غیر مجازه دیگه

این لینک هم بدرد میخوره
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام