Tag: unicode

如何正确地修剪Java中的string的空格?

JDK的String.trim()方法非常幼稚,只能删除ascii控制字符。 Apache Commons的StringUtils.strip()稍微好一些,但是使用了JDK的Character.isWhitespace() ,它不会将非空白区域识别为空格 。 那么在Java中修饰string的最完整的,与Unicode兼容的,安全的和正确的方法是什么呢? 顺便说一句,有一个更好的图书馆比commons-lang ,我应该用这种东西?

Unicode Regex; 无效的XML字符

有效的XML字符列表是众所周知的,按照规范定义: #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] 我的问题是,如果不使用Unicode常规类别实际编码代码点,是否有可能为此(或其反转)生成PCRE正则expression式。 除了不正确地覆盖了换行符和制表符以及其他一些无效字符之外,倒数可能是类似[\ p {Cc} \ p {Cs} \ p {Cn}]的东西。

Android WebView UTF-8未显示

我有一个webview,并试图加载简单的UTF-8文本。 mWebView.loadData("將賦予他們的傳教工作標示為", "text/html", "UTF-8"); 但WebView显示ANSI / ASCII垃圾。 显然是一个编码问题,但是我在告诉webview显示Unicode文本时丢失了什么? 这是一个HelloWorld应用程序。

在我的JS代码中(零宽度空间)字符。 他们从哪里来的?

我正在使用NetBeans IDE 7.0.1开发Web应用程序的前端。 最近我有一个非常讨厌的bug,我终于修好了。 说我有代码 var element = '<input size="3" id="foo" name="elements[foo][0]" />'; $('#bar').append(element); 我注意到,当我看到该size属性在Chrome中不起作用时(在其他浏览器中未检查到),出现了问题。 当我在Inspector中打开这个元素时,它被解释为类似的东西 <input id="&quot;3&quot;" name="&quot;elements[foo][0]&quot;" size="&quot;foo&quot;" /> 这很奇怪。 在手动重新inputelementstring字符后,错误消失了。 当我撤销这个改变时,我注意到Netbeans在我的旧代码中提醒了我一些Unicode字符。 它是一个在每个'='之后的零宽度空间,在'] ['和string的结尾之间。 所以string显示正常,因为零宽度空间不显示,但在逃脱他们后,我的string是 '<input size=\u200b"3" id=\u200b"foo" name=\u200b"elements[foo]\u200b[0]" />\u200b' 现在,我到底在哪里得到他们? 我不知道我从哪里复制了element的代码,但它绝对是下列之一: 具有HTML模板文件的Netbeans编辑器的其他窗格; Google Chrome Inspector,“以HTML格式复制”操作; 谷歌浏览器源代码页面(非常怀疑)。 但是我不能用这两种方法来重现这个错误。 我在Windows 7下使用Netbeans 7.0.1和Google Chrome 13.0。没有键盘切换器或类似的东西在运行。 此外,我使用Git进行版本控制,但是我没有取出这些代码,所以Git是不太可能的。 这不可能是我同事的一个愚蠢的笑话,因为他们很有礼貌。 任何build议谁搞砸了我的代码?

从JavaScriptstring中删除零宽度的空格字符

我把用户input(JS代码)和执行(处理)他们实时显示一些输出。 有时代码有这些零宽度的空间,这真的很奇怪。 我不知道用户是如何input的。 例子 – “ (​$".length === 3 我需要能够从JS中的代码中删除该字符。 我该怎么做? 或者也许还有一些其他方式来执行该JS代码,以便浏览器不考虑零宽度空格字符?

WebClient Unicode – 哪个UTF8?

当我创build一个WebClient来使用一些RESTful xml时,我可以指定unicode编码的两种方法: WebClient wc = new WebClient (); wc.Encoding = Encoding.UTF8; wc.Encoding = UTF8Encoding.UTF8; 哪个是正确/更好?

如何用钻石操作符(<>)读取UTF-8?

我想用Perl来读取UTF-8的input,不pipe它来自标准input还是来自文件,使用菱形运算符: while(<>){…} 。 所以我的脚本应该像以前一样用这两种方法调用,给出相同的结果: ./script.pl utf8.txt cat utf8.txt | ./script.pl 但是输出不同! 只有第二个调用(使用cat )似乎按照devise工作,正确读取UTF-8。 这是脚本: #!/usr/bin/perl -w binmode STDIN, ':utf8'; binmode STDOUT, ':utf8'; while(<>){ my @chars = split //, $_; print "$_\n" foreach(@chars); } 在两种情况下,我怎样才能正确读取UTF-8? 如果可能的话,我想继续使用钻石操作符<>来阅读。 编辑: 我意识到我可能应该描述不同的输出。 我的input文件包含这个序列: a\xCA\xA7b 。 用cat正确输出的方法是: a \xCA\xA7 b 但另一种方法给了我这个: a \xC3\x8A \xC2\xA7 b

为什么一些网站的标题中有?utf8 =?

我注意到很多网站在search或只是浏览时都会添加一个名为utf的getvariables,并将其设置为等于复选标记( ?utf8=✓ )。 两个例子是: Dotabuff有它的searchurl。 例如:dotabuff.com/search?utf8=&&q=PPD Bibme也有它的searchurl。 例如:bibme.org/mla/website-citation/search?utf8=&&q=someurl.com

Javascriptparsing错误'\ u2028'的Unicode字符

每当我在我的JavaScript源代码中使用\ u2028字符字面值时,将内容types设置为“text / html; charset = utf-8”,我得到一个javascriptparsing错误。 例: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>json</title> <script type="text/javascript" charset="utf-8"> var string = ' '; </script> </head> <body> </body> </html> 如果省略<meta http-equiv> ,一切都按预期工作。 我已经在Safari和Firefox上testing过了,都出现了同样的问题。 任何想法,为什么发生这种情况,以及如何正确解决这个问题(不删除编码)? 编辑:经过一番研究,具体的问题是使用JSONP返回问题字符。 这是由浏览器,它读取u2028作为换行符,并引发一个string中的无效换行错误。

unicode()。decode('utf-8','ignore')引发UnicodeEncodeError

这里是代码: >>> z = u'\u2022'.decode('utf-8', 'ignore') Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.6/encodings/utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True) UnicodeEncodeError: 'latin-1' codec can't encode character u'\u2022' in position 0: ordinal not in range(256) 为什么我在使用.decode时引发UnicodeEncodeError? 为什么我在使用“忽略”时出现错误?