如何使用Java检查句子中是否存在单词?

问题描述

尝试正则表达式

boolean contains = s.matches(".*\\bram\\b.*");

\ b表示单词边界

解决方法

我是编程和处理函数的新手,如果一个句子中存在一个单词,该函数将返回true。我尝试了该indexOf()方法,但是后来我也遇到了这种方法的一个问题:

假设我的句子是 I am a,Java Programmer.

如果我们看一下这个词ram用的indexOf()方法,那么它将返回true因为ram存在Programmer而应该是正确的输出falseram不存在的词,但作为一种模式。

我该如何解决此问题?到目前为止,我正在使用的代码是:

boolean isPresent(String word,String sentence)
{
    if(sentence.indexOf(word) >= 0)
        return true;
    else
        return false;
}

注意:
这个词ram只是一个例子,显示了我目前的方法中的一个问题,并不是我必须一直工作,ram这个词可以是任何类似的说法a,在上面的句子中后面是逗号。

更新: 感谢每个人提供他们的意见和解决方案。我选择了一个作为可接受的答案(如果允许的话,还会选择更多的答案:-),但是有很多帮助。

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”