104 عبارات Regex کاربردی که در هر زمانی ممکن است به آن‌ها نیاز داشته باشید

عبارات منظم (Regular Expressions) یا به اختصار Regex، ابزار بسیار قدرتمندی برای جستجو و دستکاری رشته‌ها هستند. در زیر لیستی از 104 عبارات Regex که ممکن است در..

انتشار: , زمان مطالعه: 6 دقیقه
104 عبارات Regex کاربردی که در هر زمانی به آن‌ها نیاز دارید
دسته بندی: برنامه نویسی تعداد بازدید: 131

عبارات منظم (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 ابزاری بسیار قدرتمند است که یادگیری و تسلط بر آن به شما امکان می‌دهد تا به طور موثر با داده‌ها و متن‌های پیچیده کار کنید.


دیدگاه های مربوط به این مقاله (برای ارسال دیدگاه در سایت حتما باید عضو باشید و پروفایل کاربری شما تکمیل شده باشد)