Jac*_*tis 4 java string parsing words
我如何解释句子中的"hi"这个词"嗨,你好吗?" 或解析"你好吗?"中的"如何"这个词?
我想要的代码示例:
String word = "hi";
String word2 = "how";
Scanner scan = new Scanner(System.in).useDelimiter("\n");
String s = scan.nextLine();
if(s.equals(word)) {
System.out.println("Hey");
}
if(s.equals(word2)) {
System.out.println("Hey");
}
Run Code Online (Sandbox Code Playgroud)
要查找子字符串,您可以使用contains或者使用indexOf任何其他变体:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html
if( s.contains( word ) ) {
// ...
}
if( s.indexOf( word2 ) >=0 ) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
如果你关心单词边界,那么StringTokenizer这可能是一个很好的方法.
http://java.sun.com/j2se/1.4.2/docs/api/java/util/StringTokenizer.html
然后,您可以对每个单词执行不区分大小写的检查(equalsIgnoreCase).
看起来像正则表达式的工作.Contains比如说会产生误报"hire-purchase".
if (Pattern.match("\\bhi\\b", stringToMatch)) { //...
Run Code Online (Sandbox Code Playgroud)