• 0

كيف أتأكد ما إذا كانت سلسلة نصية هي عنوان IP في روبي؟

لدي سلسلة نصية حصلت عليها من المستخدم وأريد التأكد ما إذا كانت هذه السلسلة النصية تحتوي على قيمة لعنوان IP أو لا فما الطريقة الصحيحة للتأكد من ذلك في روبي؟

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يوجد العديد من الطرق في روبي للتأكد من ذلك، فيمكنك استخدام تابع valid? من مكتبة ipaddress حيث ستمرر له عنوان IP وسيرجع لك إجابة على شكل قيمة منطقية كما في المثال التالي:

require "ipaddress"
IPAddress.valid? "192.128.0.11"
> true

وهذه الطريقة تدعم IPv6 أيضا، ويمكنك تثبيت هذه المكتبة بسهولة عن طريق gem وبالاستعمال السطر التالي:

gem install ipaddress

كما يمكنك استخدام توابع مكتبة resolv كما في الأمثلة التالية:

require "resolv"

"192.168.1.11"   =~ Resolv::IPv4::Regex ? true : false #=> true

"ff02::2"    =~ Resolv::IPv6::Regex ? true : false #=> true

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن