java - 字符串 Unicode 从字符串中删除字符

标签 java string format

我有一个用 NumberFormat 实例格式化的字符串。当我显示字符串的字符时,我有一个不间断的空格(十六进制代码:A0 和 unicode 160)。我怎样才能从我的字符串中删除这个字符。 我尝试了 string = string.replaceAll("\u0160", "");string = string.replaceAll("0xA0", ""),都没有工作。

String string = ((JTextField)c)getText();
string = string.replace("\u0160", "");
System.out.println("string : " string);

for(int i = 0; i < string.length; i++) {
System.out.print("char : " + string.charAt(i));
System.out.printf("Decimal value %d", (int)string.charAt(i));
System.out.println("Code point : " + Character.codePointAt(string, i));
}

输出仍然包含一个空白,十进制值为 160,代码点为 160。

最佳答案

Unicode 字符 \u0160 不是不间断空格。在\u 之后必须是字符的十六进制表示而不是十进制,因此不间断空格的 unicode 是 \u00A0。尝试使用:

string = string.replace("\u00A0","");

关于java - 字符串 Unicode 从字符串中删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8501072/

相关文章:

java - 错误- TestngTestSuiteUsingXML.java :6: error: package org. testng 不存在

java - 将桌面流式传输到 Flash 播放器

java - ArrayList 在调用服务器之间清空

将一系列字符转换为各自的 int

c - 逐字反转字符串

c# - Json 反序列化 C#

PHP 日期/时间到时间戳(自定义格式)

java - ejb3端点Web服务jboss 7抛出非法状态异常

python - 如何将 str.startswith 用于多列?

css - 如何在 OSX 的 vscode 中禁用所有自动格式化?