正则表达式删除特殊字符(拉丁文1)

时间:2013-10-28 14:00:57

标签: java regex

我无法删除以下特殊字符:

输入:

  

好奇心在火星上发现“惊人”的水,高氯酸盐

期望的输出:

  

好奇心在火星上找到“令人惊讶的”水,高氯酸盐

只需要将“转换为”。

先谢谢 罗希特夏尔

2 个答案:

答案 0 :(得分:1)

实现这一目标的一种方法是删除所有非ASCII字母:

str = str.replaceAll("[^\\u0000-\\u007f]+", "");

答案 1 :(得分:0)

以下是您要求的确切内容:

import java.util.*;
import java.lang.*;
import java.io.*;

class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        String str = "Curiosity Finds “Surprising†Amounts of Water, Perchlorate On Mars";
        str = str.replaceAll("\\u00E2\\u20AC\\u0153?", "\"");
        System.out.println("str="+str);
    }
}

输出:

  

str =好奇心在火星上发现“令人惊讶的”水,高氯酸盐

您可以在此处试用:http://ideone.com/WHCXUj

为了将来的参考,这里有一个方便的在线unicode字符查找:http://unicodelookup.com

以下是我使用它的方式,例如:http://unicodelookup.com/#“/ 1