اذهب إلى المحتوى
  • 0

كيف أحصل على اسم الملف دون الامتداد من مسار في الروبي ؟

ahmed1990

السؤال

Recommended Posts

  • 0

هنالك عدة طريق للقيام بذلك، فيمكنك استخدام وحدة Pathname (فهي حسب التوثيق الرسمي تعمل على ويندوز بدون مشاكل) لاستخراج اسم الملف من مسار كما في المثال التالي:

irb(main):007:0> require 'pathname'
irb(main):007:0> File.new('/opt/local/bin/ruby').basename
=> #<Pathname:ruby>

وإذا كنت تعرف الامتداد فيمكنك استخدام File.basename مع ذكر اسم الامتداد حتى يتم إرجاع اسم الملف بدون الامتداد، لأن File.basename تقوم بإرجاع آخر جزء من اسم الملف في المسار والذي سيكون مفصولا بواسطة "/” كما في المثال التالي:

File.basename("/home/gumby/work/ruby.rb")          #=> "ruby.rb"
File.basename("/home/gumby/work/ruby.rb", ".rb")   #=> "ruby"

كما يمكنك أيضا وضع نجمة * في مكان الامتداد لحذف جميع الامتدادات كما في المثال التالي:

File.basename("C:\\projects\\win.dll", ".*") #=> "win"

المصدر

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...