首先我要说的是,我是Java中的noobie。 (对不起,答案很简单)。 我有一个String,其中包含以下文字:
String htmlContent = "DienstagfälltMittwochfällt";
现在我有3个CharSequences:
CharSequence dt = "Dienstag";
CharSequence mt = "Mittwoch";
CharSequence keyword = "fällt";
我想要搜索
fällt
在其他2个CharSequences之间。我不应该找到
fällt
在CharSequence之后
Mittwoch
有方法还是其他什么?如果没有,我怎么能实现我的想法? 一个例子不会是坏事:)。
我的代码现在:
import java.io.*;
import java.net.*;
public class TextScanner {
public static void main (String[] args) throws Exception{
URL url = new URL("http://mpg-vertretungsplan.de/w/18/w00023.htm");
InputStream is = (InputStream) url.getContent();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line = null;
StringBuffer sb = new StringBuffer();
while((line = br.readLine()) != null){
sb.append(line);
}
String htmlContent = sb.toString();
System.out.println(htmlContent);
CharSequence dt="Dienstag";
CharSequence mt="Mittwoch";
CharSequence keyword="fällt";
boolean found = htmlContent.contains(keyword);
if(found==true){
System.out.println("Es gibt eine Fehlstunde!");
}else{
System.out.println("Es gibt keine Fehlstunde!");
}
}
}
如果
,我希望答案也是错误的keyword
在
之后mt
字符串中的:
String htmlContent2 = "DienstagMittwochfällt";
答案 0 :(得分:0)
您可以使用String.indexOf(String substr)
获取String
中两个分隔符的位置,然后使用String.substring(int beginIndex, int endIndex)
来获取它们之间的内容。
请注意,String.indexOf(String substr)
会返回子字符串的起始位置,因此要计算beginIndex
,您需要添加第一个分隔符的长度。
此外,这些方法适用于String
而不是CharSequence
,因此您必须使用.toString()
转换它们。
一旦您检索到该子字符串,请使用.contains(CharSequence substr)
来检查它是否包含搜索到的CharSequence
。
您可以在行动here中看到它。
答案 1 :(得分:0)
htmlContent.substring(htmlContent.indexOf("Mittwoch")).contains("fällt");
答案 2 :(得分:0)
您可以使用多种方法来检查句子是否存在,例如:
使用Contains()
String htmlContent = "DienstagfälltMittwochfällt";
String myString = "fällt";
if(htmlContent.contains(myString)) //contains method return true or false
{
System.out.println("myString is exist")
}
另一种方法是 使用indexOf
if(htmlContent.indexOf(myString)>1)//returns an Integer if it is -1 that's mean the string doesn't exist, otherwise the string is exist
{
System.out.println("myString is exist")
}