对不起,我的英文。我想为自己找出一点,但我没有得到。我希望在单词的情况下使用该行输出。但我有这样的打印:如果我想找到一个字 - 一个在线是应用程序 - 进入修道院回家。它仍然输出该行。而在这种情况下不想显示。不等于符号(java)
public static void main(String[] args) throws FileNotFoundException {
String line = "line number ones";
String word = "num";
String myWord = "";
int startWord = 0;
for(int i = 0; i < line.length()-1; i++) {
if(line.charAt(i) == word.charAt(startWord)) {
startWord++;
myWord += line.charAt(i);
if(myWord.equals(word)) {
if(startWord == word.length()) {
System.out.println(line);
}
startWord = 0;
}
}
}
}
由于需要进行额外的检查。是这样的:
if(Character.toString(line.charAt(i+1)) != any characters except space) {
output line
}
结果会是这样:
if(startWord == word.length() && Character.toString(line.charAt(i+1)) == " ") {
System.out.println(line);
}
但它不工作。而且我们还必须考虑到,可以是一个点,一个逗号,只是行结束。怎么做?
+1
怎么办呢?你给什么输入,你期望输出什么?你是什么意思*还必须考虑到,可以是一个点,一个逗号,只是行结束*? –
2015-02-09 22:49:45
+1
我不确定你在做什么......但我相信你可以用Pattern.match()完成它,看看这里http://docs.oracle.com/javase/7/docs/api/java /util/regex/Pattern.html –
2015-02-09 22:54:02
+0
@ElliottFrisch对不起,我表达自己很清楚。我的意思是,如果有一个逗号,然后演绎线。例如:line - ** hellow,你好吗**。字 - **你好**。在这种情况下,可以显示该行。如果线 - **,你好吗**。单词 - ** doin **。它不应该显示线。 –
2015-02-09 22:54:49