您的位置:首页 > 其它

将字符串中的标点符号过滤掉

2015-08-29 12:13 225 查看
开发中我们有可能会遇到这种情况,就是将字符串中的某个字符去掉

@Test
public void test() {
String d = trimPunctuation2("你,好oewefo,21.2!;:、1?dsf");
System.out.println(d);
}

// 将字符串中的标点符号过滤掉
public static String trimPunctuation2(String str) {
String punct[] = { ",", ".", "!", "?", ";", ":", ",", "。", "!", "?",
";", ":", "、" };
List<String> punctList = Arrays.asList(punct); // 将String数组转List集合
StringBuilder result = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
Character c = str.charAt(i);
if (punctList.contains(c.toString())) {

} else {
result.append(str.charAt(i));
}
}

return result.toString();
}

// 将字符串中的标点符号过滤掉
public static String trimPunctuation(String str) {
StringBuilder result = new StringBuilder();
for (int i = 0; i < str.length(); ++i) {
char punct[] = { ',', '.', '!', '?', ';', ':', ',', '。', '!', '?',
';', ':', '、' };
boolean need_filter = false;
for (int j = 0; j < punct.length; ++j) {
if (punct[j] == str.charAt(i)) {
need_filter = true;
break;
}
}

if (!need_filter) {
result.append(str.charAt(i));
}
}

return result.toString();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: