Perl эквивалентен htmlentities ()

Я новичок в Perl.

Я пытаюсь дублировать некоторые / большую часть функциональности PHP htmlentities()

Пока у меня есть это:

$str = '" \' < >';

$str = join('&lt;', split('<', $str));
$str = join('&gt;', split('>', $str));
$str = join('&quot;', split('"', $str));
$str = join('&#039;', split("'", $str));

print $str;

Это работает для моих нужд, но микро-оптимизатор во мне просто чувствует, что должен быть лучший способ.

Я ужасно разбираюсь в regex, и многие учебники по Perl имеют дело с пользовательскими или нестандартными библиотеками, или мне кажется, что это так из-за моей неопытности.

perl -v производит:

v5.10.1

-1

Решение

использование HTML :: Entities«s encode_entities, (Очевидно, он не будет на 100% эквивалентен, так как htmlentities варьируется в зависимости от аргументов, переданных ему.)

3

Другие решения

Эй, то, что вы просили, может быть достигнуто с помощью decode_entities ()

Пример кода: —

use HTML::Entities; my $html = "Hey &amp; &lt"; print decode_entities($html), "\n";

Используйте это как ссылку: — Ссылка

0

По вопросам рекламы [email protected]