如何从java中的字符串中删除Â字符?

时间:2015-08-07 06:13:13

标签: java string utf-8 inputstream

我有以下字符串,Â特殊字符隐藏在其中。我只想从此字符串Â中删除~IQBAL~KARACHI¦~~~~~~~~~~~

这是一张前后图像,以显示我的意思:

enter image description here

我试过这段代码:

responseMessageUTF.replaceAll("\\P{InBasic_Latin}", "");

但这也取代了¦字符。有没有办法只删除Â字符而不删除¦字符?

2 个答案:

答案 0 :(得分:3)

我有一个简单的单行代码,它删除了大多数非UTF-8字符。我也测试了你的角色,即Â。

        String myString = "~KARACHI¦~~~~~~";
        String result = myString.replaceAll("[^\\x00-\\x7F]","");
        System.out.println(result);

您可以找到完整的代码here。 你也可以测试here

答案 1 :(得分:-2)

您必须使用正确的UTF:

代码示例:

String blub = " ~KARACHI¦~~~~~~";
System.out.println(blub);
System.out.println(blub.replaceAll(new String("Â".getBytes("UTF-8"), "UTF-8"), ""));

<强>输出:

 ~KARACHI¦~~~~~~
 ~KARACHI¦~~~~~~

在此处查看与此问题类似的说明:Link