• 0

كيف أقوم بتشفير/بفك تشفير عبارات HTML في الروبي ؟

أريد أن أقوم بفك تشفير بعض عبارات وجمل مكتوبة بلغة HTML مثل '&amp;lt;' => '<' فكيف أستطيع فعل ذلك في الروبي ؟ لأنني أحتاج لاستخدام ذلك في مشروعي البرمجي.

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


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

هنالك عدة طرق لفعل ذلك، فيمكنك استخدام HTMLEntities كما في المثال التالي:

: jmglov@laurana; sudo gem install htmlentities
Successfully installed htmlentities-4.2.4
: jmglov@laurana;  irb
irb(main):001:0> require 'htmlentities'
=> []
irb(main):002:0> HTMLEntities.new.decode "&iexcl;I&#39;m highly&nbsp;annoyed with character references!"
=> "¡I'm highly annoyed with character references!"

طبعا افترضت أنك تستخدم نظام لينكس لتثبيت الحزمة، لأن هذه الحزمة يجب تثبيتها من gem قبل أن تتمكن من استخدامها.
ويمكنك أيضا استخدام CGI.escapeHTML لتشفير الحروف كما في المثال التالي:

string = CGI.escapeHTML('test "escaping" <characters>')

ولفك التشفير يمكنك استخدام CGI.unescapeHTML:

CGI.unescapeHTML("test &quot;unescaping&quot; &lt;characters&gt;")

طبعا ستحتاج إلى استدعاء مكتبة CGI قبل أن تستخدم الشيفرتين في الأعلى:

require 'cgi'

وإذا كنت تستخدم ريلز (ROR) فلن تحتاج في هذه الحالة إلى CGI فيمكنك تشفير النصوص باستخدام طريقة h كما في المثال التالي:

<%= h 'escaping <html>' %>

المصدر

تمّ تعديل بواسطة هشام رزق الله

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


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

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

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

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


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

تسجيل الدخول

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


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