Java 处理英文文本标点符号去除

本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流。

未经本人允许禁止转载

介绍

在英文文本处理时,需要将噪音字符出去,其中标点符号便属于噪音字符。在我的这篇博客中,https://blog.csdn.net/qy20115549/article/details/83869689 介绍了使用stanford-corenlp实现分词、词形还原的操作。其分词结果,标点符号也成了独立的字符串,剩下的工作便是对分词后获得的字符串集合进行逐个判断(即判断是否为标点符号,是否为停用词、是否为URL字符等)。
在我的这篇博客中https://blog.csdn.net/qy20115549/article/details/80684455,也已经介绍了停用词的处理。

java判断是否为标点符号

如下,为java操作程序:


import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test1 {

	public static void main(String[] args) {
		String c1 = "¥";
		System.out.println("¥是否为标点符号:" + isPunctuation(c1));
		String c2 = "we-are";
		System.out.println("we-are是否为标点符号:" + isPunctuation(c2));

	}
	//判断是否为标点符号
	public static boolean isPunctuation(String str)  {
		String regEx = "[`~☆★!@#$%^&*()+=|{}':;,\\[\\]》·.<>/?~!@#¥%……()——+|{}【】‘;:”“’。,、?]";
		Pattern p = Pattern.compile(regEx);
		Matcher m = p.matcher(str);
		//如果长度为1且能匹配正则表达式
		if (str.length() == 1 && m.matches()) {
			return true;
		}else {
			return false;
		}
	}
}

执行该程序,在控制台的输出结果为:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值