PDA

View Full Version : معرفی برخی علائم عبارات منظم



molana alavi
چهارشنبه 04 دی 1387, 10:58 صبح
قطعا همتون می دونید عبارات منظم چی هستش و ممکنه بعضی هاتون با علائم این عبارات آشنا نباشن در زیر برخی از این علائم معرفی شدن :
1) ^ : نشانه شروع می باشد و بهتر است در شروع هر عبارتی وجود داشته باشد.
2) $ : نشانه پایان می باشد و بهتر است در پایان هر عبارت وجود داشته باشد.
3) + : نشانه تکرار می باشد یعنی اگر در این علامت در پشت عبارتی قرار بگیرد آن عبارت می تواند حداقل یک یا چندین بار تکرار شود.
4) * : همانند + می باشد با این تفاوت که آن عبارت می تواند هیچ بار نیز تکرار شود.
5) ? : اگر پشت عبارتی قرار بگیرد یعنی اینکه آن عبارت صفر یا یک بار تکرار شود..
6) () : برای قسمت بندی عبارات به زیر عبارات و اولویت بندی نیز می باشد.
7) [] : لیستی از کاراکترها که می خواهیم تطبیق دهیم در این دو کروشه قرار می گیرد.
8) [^..] : لیستی از کاراکترهائی که نمی خواهیم تطبیق داده شوند از این عبارت استفاده می کنیم.
9) \d : نشانه ارقام می باشد یعنی وقتی این عبارت بیاید منظور یکی از ارقام است.
10) \D : نشانه هر کاراکتری غیر از رقم می باشد.
11) \w : نشانه حرف یا عدد می باشد یعنی وقتی این علامت می آید منظور یک حرف یا عدد است. و کاراکترهای خاص نیست و معادل عبارت روبه رو می باشد. [a-zA-Z_0-9]
12) \W : نشانه کاراکترهای خاص می باشد یعنی وقتی این علامت می آید منظور کاراکترهای خاص است و عدد یا حروف یا space نیست.
13) \s : نشانه کاراکتر space می باشد.
14) \S : نشان هر کاراکتری غیر از space می باشد.
15) {} : مشخص کننده تعداد تکرارا می باشد و اگر داخل آن یک عدد نوشته شود یعنی اینکه عبارت قبل از آن دقیقا باید به تعداد آن عدد تکرارا شود ولی اگر دو عدد نوشته شود عبارت قبل از آن باید تکراری بین آن دو عدد باشد.
16) $literal : اگر بخواهیم هر یک از Literal ها نیز در ورودی وجود داشته باشند آنها را بعد از علامت $ مینویسم.
17) \p{name} : مربوط به گروه های کاراکتری می باشد. که نام گروه بجای name می نشیند برخی از این گروه ها به شرح زیر هستند:
Ll : نشانه حرف الفبائی کوچک انگلیسی می باشد
Lo : نشانه حروف الفبائی Unicode می باشد البته حروف انگلیسی را شامل نمی شود!.
Nd : همان عدد می باشد و معادل \d می باشد.
Pc : همان آندرلاین می باشد.
مثالهای مربوط به عبارات منظم :
1) ورودی فقط یک رقم باشد : ^\d$ Pattern = یا Pattern = ^\d{1}$
2) ورودی یک یا صفر رقم باشد : pattern = ^\d?$ یاPattern = ^\d{0,1}$
3) ورودی یک یا چندین حرف یا عدد یا _ باشد: Pattern = ^\w+$
4) ورودی حداکثر 7 علامت خاص باشد: Pattern = ^\W{1,7}$
5) ورودی آدرس ایمیلی از yahoo یا gmail باشد: Pattern=^(\w|[$.])+@(yahoo|gmail)([$.]com)$
6) ورودی فقط از حروف الفبای انگلیسی به تعداد نامشخص تشکیل شده باشد: Pattern=^[a-zA-Z]+$
7) ورودی فقط از حروف الفبا تشکیل شده باشد: Pattern = ^([A-Za-z]|\p{Lo})+$
8) ورودی فقط حروف الفبای فارسی باشد: ]+$ا-یءئPattern = ^[