Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     12 Jan 2003  23:24:24
 To : "Serg"
 Subject : Re: Как закодировать строку?
 -------------------------------------------------------------------------------- 
 
 Здравствуй, Serg.
 
 S> Hi All,
 
 S> есть строка, нопример:
 S> $st='gg<>kk';
 S> Какие есть классы, что бы культурно ее закодировать. В результате она примет
 S> вид:
 S> $st='gg%3C%3Ekk';
 
 URI::Escape?
 
 S> Вообще, для этого у меня есть функция:
 S> sub urlencode
 S> {
 S>  my $theURL = $_[0];
 S>  my $MetaChars = quotemeta('<>;,/?\|=+)(*&^%$#!~`:');
 S>  $theURL =~ s/([$MetaChars\"\'\x80-\xFF])/"%".uc(sprintf("%2.2x",
 S> ord($1)))/eg;
 S>  $theURL =~ s/ /\+/g;
 S>  return $theURL;
 S> }
 S> Щас вот залез в dreamweaver и он мне ее закодировал так:
 S> $st='gg<>kk';
 
 А это HTML escaping. Они применяются в разных местах.
 
 S> А строку $st='абв' так:
 S> àáâ
 S> Естественно, моя-то функция такого сделать не сможет.
 
 И слава Богу... Я бы за это автору либо dreamweaver, либо тому, кто его
 настраивал, оборвал бы органы размножения.
 
 S> Hо почти наверняка есть
 S> класс, в котором можно закодировать и первым вариантом (%\d\d) и вторым
 S> (&simv). Hе подскажите его?
 
 CGI в принципе умеет. Больше вряд ли кто - для остальных задачи
 непересекающиеся. Hо CGI, подозреваю, для всего экранируемого, кроме <, >, " и
 & будет вставлять entity с кодом. Что в большинстве случаев тоже неправильно.
 
 -- 
 Artem Chuprina
 Communiware.net
 RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757
 --- ifmail v.2.15dev5
  * Origin: Leninsky 45 home network (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Как закодировать строку?   Serg   11 Jan 2003 15:12:04 
 Re: Как закодировать строку?   Artem Chuprina   12 Jan 2003 23:24:24 
Архивное /ru.perl/14454fb527034.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional