我的第一个要求是使用Java中的正则表达式从某些文本中提取所有单词。
以下代码对我来说非常完美
String[] words = text.split("[^\\w']+");
它还删除除撇号('
)之外的所有标点符号和特殊字符
我的下一个任务是 提取具有多个(例如)3
字符的单词,重要的是,我想在上述正则表达式中执行此操作。
您可能会想出一些其他的正则表达式来完成这两项任务。
有趣的事实 。A
word
是语音或写作的一个独特元素,形成一个句子,通常在两边都带有空格。\w
匹配(任何letter
,number
或underscore
)
不清楚您要问的是什么,而没有更好地解释您要完成的任务。
如果要包含一个单词匹配letters
和撇号'
有 更多 比3
字符..
List<String> words = new ArrayList<String>();
String s = "I want to have alot of money's when I am older.";
Pattern p = Pattern.compile("[a-zA-Z']{4,}");
Matcher m = p.matcher(s);
while (m.find()) {
words.add(m.group());
}
System.out.println(words);
// [want, have, alot, money's, when, older]
注意 :这匹配包含多个3
字符的单词,如果您还想匹配包含3
(foo
)或更多字符的单词,则可以使用以下内容。
Pattern p = Pattern.compile("[a-zA-Z']{3,}");
问题内容: 假设您有一个像这样的文本文件:http : //www.gutenberg.org/files/17921/17921-8.txt 有没有人有一个好的算法或开放源代码从文本文件中提取单词?如何获得所有单词,同时避免使用特殊字符,并保留诸如“ it’s”之类的内容… 我在用Java工作。谢谢 问题答案: 这听起来像是正则表达式的正确工作。如果您不知道如何开始,以下是一些Java代码,可以
问题内容: 有谁知道从文本中仅提取名词的最简单方法? 我听说过TreeTagger工具,但尝试尝试一下,但由于某种原因而无法使用。 有什么建议? 谢谢菲尔 编辑: 那是我的代码,英语是语言。我遇到了错误:new TokenHandler(){}类型必须实现继承的抽象方法TokenHandler.token。难道我做错了什么? 问题答案: 首先,您必须标记文本。这看似微不足道(在任何空格处分割都可以
我有一个文本框(EditText),当我插入一个文本和一个按钮时,应该计算该文本的长度并将其显示在另一个文本框中,我应该如何对该按钮进行编码
我得到以下字符串: 我想从里面拿走食物和饮料。 我尝试了以下代码: 但它给人的感觉是,食物很刺激,喝了很多,离食物很近,三个和四个。
我想读一个文本文件,打印出已知单词前面的单词,比如Java中的xxx。我使用Scanner类用java编写了这段代码。但是这段代码只打印了“xxx”前面的一半单词,而“xxx”前面的一些单词则丢失了。我想知道是什么问题,你能解决这个代码吗。 测试文件包含类似的内容
我有一个复杂的字符串。 ex: AVG( 我要把AVG,MAX和MEAN列在名单上。 也可以有这样的字符串。 平均值(最大值)( 如何以最简单、最优化的方式实现这一点?