104 عبارات Regex کاربردی که در هر زمانی ممکن است به آنها نیاز داشته باشید
عبارات منظم (Regular Expressions) یا به اختصار Regex، ابزار بسیار قدرتمندی برای جستجو و دستکاری رشتهها هستند. در زیر لیستی از 104 عبارات Regex که ممکن است در..
عبارات منظم (Regular Expressions) یا به اختصار Regex، ابزار بسیار قدرتمندی برای جستجو و دستکاری رشتهها هستند. در زیر لیستی از 104 عبارات Regex که ممکن است در شرایط مختلف به آنها نیاز داشته باشید را آوردهایم.
1. تشخیص آدرس ایمیل
^[\w\.-]+@[a-zA-Z\d\.-]+\.[a-zA-Z]{2,}$
2. تشخیص شماره تلفن (ده رقمی)
^\d{10}$
3. تشخیص کد پستی ایالات متحده (پنج رقمی یا با پسوند چهار رقمی)
^\d{5}(-\d{4})?$
4. تشخیص URL
^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$
5. تشخیص تاریخ به فرمت YYYY-MM-DD
^\d{4}-\d{2}-\d{2}$
6. تشخیص کارت اعتباری (16 رقمی)
^\d{4}-?\d{4}-?\d{4}-?\d{4}$
7. تشخیص آدرس IP (IPv4)
^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$
8. تشخیص آدرس IP (IPv6)
^([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4}|:)$
9. تشخیص فقط حروف کوچک
^[a-z]+$
10. تشخیص فقط حروف بزرگ
^[A-Z]+$
11. تشخیص فقط اعداد
^\d+$
12. تشخیص فقط حروف و اعداد (بدون فاصله)
^[a-zA-Z0-9]+$
13. تشخیص حروف فارسی
^[\u0600-\u06FF\s]+$
14. تشخیص فایل با پسوند .jpg یا .png
^.*\.(jpg|png)$
15. تشخیص شماره موبایل ایران
^(\+98|0)?9\d{9}$
16. تشخیص زمان به فرمت HH
^(2[0-3]|[01]?[0-9]):([0-5]?[0-9])$
17. تشخیص کلمهای که با حرف بزرگ شروع میشود
^[A-Z][a-z]*$
18. تشخیص فضای خالی در ابتدا یا انتهای رشته
^\s+|\s+$
19. تشخیص کاراکترهای غیرالفبایی
[^a-zA-Z]
20. تشخیص رشتهای با طول مشخص (مثلاً 8 کاراکتر)
^.{8}$
21. تشخیص تگهای HTML
<("[^"]*"|'[^']*'|[^'">])*>
22. تشخیص تاریخ با فرمت MM/DD/YYYY
^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/\d{4}$
23. تشخیص اسکریپتهای جاسازی شده (مثل JavaScript در HTML)
<script\b[^>]*>([\s\S]*?)<\/script>
24. تشخیص نقل قولهای ساده و دوگانه در یک رشته
['"][^'"]*['"]
25. تشخیص شماره پلاک خودرو در ایران
^\d{2}[A-Z]\d{4}$
26. تشخیص تکرار حروف (حداقل 3 بار)
(\w)\1\1
27. تشخیص اعداد منفی و مثبت
^-?\d+$
28. تشخیص کلمات دارای حروف تکراری
\b(\w)*(\w)\2(\w)*\b
29. تشخیص کامنت در زبانهای برنامهنویسی C و C++
\/\*[\s\S]*?\*\/|\/\/.*
30. تشخیص کاراکترهای غیرقابل پرینت
[\x00-\x1F\x7F]
31. تشخیص URLهای بدون پروتکل
^www\.[^\s]+$
32. تشخیص شمارههای شناسه ملی ایران
^\d{10}$
33. تشخیص ساعت با ثانیه (HH:MM)
^(2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$
34. تشخیص تمام کاراکترهای غیرفارسی
[^\u0600-\u06FF\s]
35. تشخیص رشته با حداقل یک عدد
^(?=.*\d).+$
36. تشخیص کد رنگ هگزادسیمال
^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$
37. تشخیص تگ عنوان HTML (H1 تا H6)
<h[1-6]>.*<\/h[1-6]>
38. تشخیص رشتههای عددی که با صفر شروع میشوند
^0\d+$
39. تشخیص شمارههای ISBN-10
^\d{9}[\d|X]$
40. تشخیص شمارههای ISBN-13
^\d{13}$
41. تشخیص نام فایل معتبر (بدون کاراکترهای غیرمجاز)
^[\w,\s-]+\.[A-Za-z]{3}$
42. تشخیص اسامی که با حروف بزرگ شروع میشوند
^[A-Z][a-z]+$
43. تشخیص رشتههای شامل کاراکترهای خاص
[\W_]+
44. تشخیص فرمت XML
<\?xml\b[^>]*\?>
45. تشخیص کد کشور در شماره تلفن (با +)
^\+\d{1,3}\s?\d+$
46. تشخیص اعداد اعشاری
^\d+\.\d{1,2}$
47. تشخیص کلیدواژههای رزرو شده در SQL
\b(SELECT|UPDATE|DELETE|INSERT|INTO|VALUES)\b
48. تشخیص کلمات فارسی در بین متن
[\u0600-\u06FF]+
49. تشخیص رشتههای داخل پرانتز
\([^)]*\)
50. تشخیص سال کبیسه
^([0-9]{2}(0[48]|[2468][048]|[13579][26])|([02468][048]00))$
51. تشخیص بارکد EAN-13
^\d{13}$
52. تشخیص تمام حروف و اعداد بدون فاصله
^\w+$
53. تشخیص کلمهای که به صورت Palindrome است (مثلاً "madam")
\b(\w)(\w)?(\w)?(\w)?\3\2\1\b
54. تشخیص حروف یونانی
[\u0370-\u03FF]
55. تشخیص فاصلههای چندگانه
\s{2,}
56. تشخیص حروف ژاپنی (Hiragana و Katakana)
[\u3040-\u30FF]
57. تشخیص آدرس ایمیلهایی که با "info" شروع میشوند
^info@[a-zA-Z\d\.-]+\.[a-zA-Z]{2,}$
58. تشخیص تاریخ با فرمت DD-MM-YYYY
^\d{2}-\d{2}-\d{4}$
59. تشخیص خطوطی که با یک کلمه خاص شروع میشوند
^word.*$
60. تشخیص شمارههای سریال محصولات
^[A-Z0-9]{10}$
61. تشخیص نقاط در انتهای جمله
\.\s*$
62. تشخیص شمارههای کد ملی در ایران (شامل 10 رقم)
^\d{10}$
63. تشخیص اعداد زوج
^\d*[02468]$
64. تشخیص اعداد فرد
^\d*[13579]$
65. تشخیص بلوک کد در زبانهای برنامهنویسی (مثلاً جاوا)
\{[^}]*\}
66. تشخیص شمارههای پاسپورت (فرمت معمولی)
^[A-Z]\d{7,9}$
67. تشخیص تاریخ میلادی معتبر
^(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$
68. تشخیص روز هفته به زبان انگلیسی
^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday)$
69. تشخیص کلمات مخفف (مثلاً Dr., Mr.)
^(Mr|Mrs|Ms|Dr|Prof)\.$
70. تشخیص شمارههای طبقهبندی کتابخانه (ISBN)
^\d{3}-\d{1,5}-\d{1,7}-\d{1,7}-\d{1,7}$
71. تشخیص کاراکترهای غیرالفبایی (بدون فاصله و عدد)
[^a-zA-Z\d\s:]
72. تشخیص رشتههای JSON
\{(?:[^{}]|(?R))*\}
73. تشخیص هویت کارت اعتباری (Visa, MasterCard, AMEX)
^4[0-9]{12}(?:[0-9]{3})?$|^5[1-5][0-9]{14}$|^3[47][0-9]{13}$
74. تشخیص تاریخ میلادی معتبر با ماه و روز قابل تنظیم
^(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|3[01])/(19|20)\d\d$
75. تشخیص فرمتهای ویدیویی (MP4, AVI, MKV)
.*\.(mp4|avi|mkv)$
76. تشخیص مقادیر هگزادسیمال (0x...)
^0x[0-9A-Fa-f]+$
77. تشخیص ساعت و دقیقه با AM/PM
^(0?[1-9]|1[0-2]):[0-5][0-9]\s?(AM|PM)$
78. تشخیص فقط حروف و اعداد با طول مشخص
^[a-zA-Z0-9]{8,10}$
79. تشخیص تگهای باز و بسته HTML
<[^\/>]+>.*<\/[^>]+>
80. تشخیص اعداد بین 1 تا 100
^(100|[1-9]?\d)$
81. تشخیص نمادهای مالی ($, €, ¥)
[\$\€\¥]
82. تشخیص URLهای با یا بدون "www."
^(https?:\/\/)?(www\.)?[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
83. تشخیص واحدهای اندازهگیری (kg, cm, m)
\d+(kg|cm|m)$
84. تشخیص نام فایلهای .pdf و .docx
^.*\.(pdf|docx)$
85. تشخیص آدرس ایمیلهای گوگل (gmail)
^[\w.+-]+@gmail\.com$
86. تشخیص کدهای پستی در انگلستان
^[A-Z]{1,2}\d[A-Z\d]? ?\d[A-Z]{2}$
87. تشخیص شمارههای موبایل با کد کشور
^\+\d{1,3}\d{9,10}$
88. تشخیص حروف چینی (هانزی)
[\u4E00-\u9FFF]
89. تشخیص آدرسهای ایمیل با دامنههای خاص
^[\w\.-]+@(example|domain)\.com$
90. تشخیص سطرهای خالی در متن
^\s*$
91. تشخیص رشتههای دارای اعداد متوالی
\d{2,}
92. تشخیص زمان 12 ساعته با ثانیه
(1[0-2]|0?[1-9]):([0-5][0-9]):([0-5][0-9]) (AM|PM)
93. تشخیص اسامی با حروف خاص (مثلاً ß، ñ)
[A-Za-zßñ]+
94. تشخیص پیامهای خطا (Error, Warning, Info)
\b(Error|Warning|Info)\b
95. تشخیص سالهای میلادی بین 1900 و 2099
^(19|20)\d{2}$
96. تشخیص مقادیر اعشاری مثبت
^\d*\.?\d+$
97. تشخیص محتوای بین دو کاراکتر خاص (مثلاً < و >)
<[^>]*>
98. تشخیص URLهایی که با HTTPS شروع میشوند
^https:\/\/[^\s]+$
99. تشخیص الگوهای رمز عبور پیچیده (حداقل یک عدد، یک حرف بزرگ و یک کاراکتر خاص)
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*\W).{8,}$
100. تشخیص اعداد رومی
^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$
101. حذف خطوط خالی
^\s*\r?\n
102. پیدا کردن محتوای بین دو محتوا
<title>(.*?)<\/title>
103.پیدا کردن اول خط
^
104. پیدا کردن آخر خط
$
این لیست تنها بخشی از قابلیتهای Regex را نشان میدهد. با استفاده از این عبارات میتوانید جستجوها و پردازشهای متنی خود را بهصورت کارآمدتری انجام دهید. Regex ابزاری بسیار قدرتمند است که یادگیری و تسلط بر آن به شما امکان میدهد تا به طور موثر با دادهها و متنهای پیچیده کار کنید.
دیدگاه های مربوط به این مقاله (برای ارسال دیدگاه در سایت حتما باید عضو باشید و پروفایل کاربری شما تکمیل شده باشد)