你在正则表达式中的意思是什么?

时间:2011-07-15 09:36:07

标签: regex perl

我遇到了这段代码,我对u的含义感到茫然:

$todecode =~ s{
   %u([Dd][89a-bA-B][0-9a-fA-F]{2}) # hi
          %u([Dd][c-fC-F][0-9a-fA-F]{2})   # lo
        }{
     utf8_chr(
       0x10000_
       + (hex($1) - 0xD800) * 0x400_
       + (hex($2) - 0xDC00)
      )
        }gex;

1 个答案:

答案 0 :(得分:14)

这是tv之间的字母。 (它与文字u匹配。)

看起来某人有一些文本UTF-16代理对被写为%uD800%uDC00,他们将解码后的代码点传递给utf8_chr函数,并替换结果