استبدال التعبير العادي ببيانات رمز المفاتيح
-
22-09-2019 - |
سؤال
Public ReadOnly Property IsAlphaNumeric(ByVal entry As String) As Boolean
Get
Return New Regex("(?!^[0-9]*$)(?!^[a-zα-ωA-ZΑ-Ω]*$)^([a-zα-ωA-ZΑ-Ω0-9]{6,15})$", RegexOptions.IgnoreCase).IsMatch(entry)
End Get
End Property
هذا جيد جدًا للغة اليونانية والإنجليزية.
ماذا عن كل اللغات الأخرى في الكون؟
هل يجب أن أستبدل الكود أعلاه بوظيفة أخرى ، التحقق من صحة بيانات رمز المفاتيح وطول النص أم ماذا؟
المحلول
أوصي باستخدام تعريفات حرف Unicode بدلاً من ذلك ، مثل \p{L}
للرسائل و \p{N}
للأرقام.
يمكنك إيجاد الوثائق حول الفئات المعترف بها في MSDN.
ومع ذلك ، لست متأكدًا مما إذا كان يدعم Klingon Alphabet.
نصائح أخرى
هذا واحد رائع أيضا! وجدت في A1VBCODE.com
Public Function IntlIsAlphaCharacter(sChar As String) As Boolean
IntlIsAlphaCharacter = (Not (UCase(sChar) = LCase(sChar))) Or (sChar = " ")
End Function
اللغة الأم لـ Klingons هي Regex؟
لا تنتمي إلى StackOverflow