
نوشته شده توسط
mazoolagh
3- موضوع کاربردی اینجاست:
.Pattern = "(.)\1{9}"
در واقع الگوریتم انتخاب شده برای کد ملی یک اشکال داره و اونهم این هست که
اگر همه ارقام یکی باشن معتبر نشون میده (البته در واقعیت ما باید از یک api استفاده کنیم و کد ملی رو با سایر مشخصات تطبیق بدیم).
در این پترن از چیزی استفاده کردیم که بهش back-reference میگن و برای capture group شماره 1 - 9 بار تکرار میشه (جمعا 10 بار).
وگرنه میبایست همه این 10 حالت رو چک میکردیم - حالا یا یکی یکی یا در یک حلقه.
.
با سلام و وقت بخیر
در تابع فوق نمیشه از طریق کد زیر تکراری بودن 10 رقم کد ملی رو چک کرد؟
If Len(SSID) - Len(Replace(SSID, Left(SSID, 1), "")) = 10 Then
IsValidSSID = False
Exit Function
End If