uʍop-ǝpᴉsdn文本如何工作?

fly*_*ire 64 unicode text-processing

这是我发现的一个网站,它将生成任何英文文本的颠倒版本.

它是如何工作的?unicode有颠倒的字符吗?或者是什么?

如何编写自己的文本翻转功能?

dan*_*n04 51

它是如何工作的?unicode有颠倒的字符吗?

Unicode 确实有颠倒的字符.他们的名字中有"TURNED":

? U+018D LATIN SMALL LETTER TURNED DELTA
? U+019C LATIN CAPITAL LETTER TURNED M
? U+01DD LATIN SMALL LETTER TURNED E
? U+0245 LATIN CAPITAL LETTER TURNED V
? U+0250 LATIN SMALL LETTER TURNED A
? U+0252 LATIN SMALL LETTER TURNED ALPHA
? U+0265 LATIN SMALL LETTER TURNED H
? U+026F LATIN SMALL LETTER TURNED M
? U+0270 LATIN SMALL LETTER TURNED M WITH LONG LEG
? U+0279 LATIN SMALL LETTER TURNED R
? U+027A LATIN SMALL LETTER TURNED R WITH LONG LEG
? U+027B LATIN SMALL LETTER TURNED R WITH HOOK
? U+0287 LATIN SMALL LETTER TURNED T
? U+028C LATIN SMALL LETTER TURNED V
? U+028D LATIN SMALL LETTER TURNED W
? U+028E LATIN SMALL LETTER TURNED Y
? U+029E LATIN SMALL LETTER TURNED K
? U+02AE LATIN SMALL LETTER TURNED H WITH FISHHOOK
? U+02AF LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL
? U+02B4 MODIFIER LETTER SMALL TURNED R
? U+02B5 MODIFIER LETTER SMALL TURNED R WITH HOOK
? U+02BB MODIFIER LETTER TURNED COMMA
? U+0312 COMBINING TURNED COMMA ABOVE
? U+10F9 GEORGIAN LETTER TURNED GAN
? U+1D02 LATIN SMALL LETTER TURNED AE
? U+1D08 LATIN SMALL LETTER TURNED OPEN E
? U+1D09 LATIN SMALL LETTER TURNED I
? U+1D14 LATIN SMALL LETTER TURNED OE
? U+1D1A LATIN LETTER SMALL CAPITAL TURNED R
? U+1D1F LATIN SMALL LETTER SIDEWAYS TURNED M
? U+1D44 MODIFIER LETTER SMALL TURNED A
? U+1D46 MODIFIER LETTER SMALL TURNED AE
? U+1D4C MODIFIER LETTER SMALL TURNED OPEN E
? U+1D4E MODIFIER LETTER SMALL TURNED I
? U+1D5A MODIFIER LETTER SMALL TURNED M
? U+1D77 LATIN SMALL LETTER TURNED G
? U+1D9B MODIFIER LETTER SMALL TURNED ALPHA
? U+1DA3 MODIFIER LETTER SMALL TURNED H
? U+1DAD MODIFIER LETTER SMALL TURNED M WITH LONG LEG
? U+1DBA MODIFIER LETTER SMALL TURNED V
? U+2129 TURNED GREEK SMALL LETTER IOTA
? U+2132 TURNED CAPITAL F
? U+2141 TURNED SANS-SERIF CAPITAL G
? U+2142 TURNED SANS-SERIF CAPITAL L
? U+2144 TURNED SANS-SERIF CAPITAL Y
? U+214B TURNED AMPERSAND
? U+214E TURNED SMALL F
? U+2319 TURNED NOT SIGN
? U+275B HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT
? U+275D HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT
? U+29A2 TURNED ANGLE
? U+2C6F LATIN CAPITAL LETTER TURNED A
? U+2C79 LATIN SMALL LETTER TURNED R WITH TAIL
? U+2C7B LATIN LETTER SMALL CAPITAL TURNED E
? U+A77E LATIN CAPITAL LETTER TURNED INSULAR G
? U+A77F LATIN SMALL LETTER TURNED INSULAR G
? U+A780 LATIN CAPITAL LETTER TURNED L
? U+A781 LATIN SMALL LETTER TURNED L
Run Code Online (Sandbox Code Playgroud)

但是,它远不是一整套.大多数颠倒的文本通过选择碰巧与倒置字母足够相似的字符来工作.这相当于在你的计算器上键入0.7734来拼写"你好".


Jon*_*ler 30

当'uʍop-ǝpısdn'被复制并回显到十六进制转储程序时,该字符串被视为:

75 CA 8D 6F 70 2D C7 9D 70 C4 B1 73 64 6E
Run Code Online (Sandbox Code Playgroud)

UTF-8的细分是:

0x75      = U+0075 = LATIN SMALL LETTER U
0xCA 0x8D = U+028D = LATIN SMALL LETTER TURNED W
0x6F      = U+006F = LATIN SMALL LETTER O
0x70      = U+0070 = LATIN SMALL LETTER P
0x2D      = U+002D = HYPHEN MINUS
0xC7 0x9D = U+01DD = LATIN SMALL LETTER TURNED E
0x70      = U+0070 = LATIN SMALL LETTER P
0xC4 0xB1 = U+0131 = LATIN SMALL LETTER DOTLESS I
0x73      = U+0073 = LATIN SMALL LETTER S
0x64      = U+0064 = LATIN SMALL LETTER D
0x6E      = U+006E = LATIN SMALL LETTER N
Run Code Online (Sandbox Code Playgroud)


Pat*_*cks 27

unicode有颠倒的字符吗?

对!或者至少看起来像是颠倒的字符.此外,常规的英文字母字符可能看起来是颠倒的.就像可能是一个颠倒的n.

要对其进行编码,您只需要取一个字符数组,以相反的顺序显示它们,并用它们的颠倒版本替换这些字符.这将为您提供一个良好的开端:zʎxʍʌnʇsɹbdouɯןʞsɥɥbɟǝpɔqɐ

  • 他们使用阿拉伯语Ẓā',"ظ"代表"j":亚美尼亚的Reh,"Ր"不是更好吗? (10认同)
  • `u`和`n`也是Unicode字符,它们不再比其他字符"常规"...`☺` (4认同)

Igo*_*aka 7

它们只是unicode字符.

在此输入图像描述


ren*_*egm 6

看看网页的来源:

function flip() {
    var result = flipString(document.f.original.value);
    document.f.flipped.value = result;
}

function flipString(aString) {
    aString = aString.toLowerCase();
    var last = aString.length - 1;
    var result = "";
    for (var i = last; i >= 0; --i) {
        result += flipChar(aString.charAt(i))
    }
    return result;
}

function flipChar(c) {
    if (c == 'a') {
        return '\u0250'
    }
    else if (c == 'b') {
        return 'q'
    }
    else if (c == 'c') {
        return '\u0254' //Open o -- copied from pne
Run Code Online (Sandbox Code Playgroud)

  • 看起来您的答案已被截断 (2认同)
  • 它被截断了.我只放了第一行.看一下网页的代码来源 (2认同)