如何编写一个删除标点符号的方法?

时间:2014-10-19 02:30:10

标签: punctuation

我正在尝试编写一个接收句子(str)并在没有标点符号(。,?!:“)的情况下打印它的方法。
现在我的方法是删除一些标点符号,但不是全部。

public static String dePunct(String str)
{
    String noPunct = str;
    int length = str.length();
    for (int i = 0; i < length; i++)
    {
        if (str.charAt(i)=='.' || str.charAt(i)==','|| str.charAt(i)=='!'|| str.charAt(i)=='?'|| str.charAt(i)==':'|| str.charAt(i)=='"')
        {
            StringBuffer strSB = new StringBuffer(str);
            StringBuffer newStrSB =s trSB.replace(i,i+1, "");  
            noPunct = newStrSB.toString();
            length = noPunct.length();
        }
    }
    return noPunct;
}

1 个答案:

答案 0 :(得分:0)

使用

String a = sentence.replaceAll("[.,:!\\?]","");