String match = "hello";
String text = "0123456789hello0123456789";
int position = getPosition(match, text); // should be 10, is there such a method?
执行此操作的方法家族是:
int indexOf(String str)
indexOf(String str, int fromIndex)
int lastIndexOf(String str)
lastIndexOf(String str, int fromIndex)
返回指定子字符串的第一个(或最后一个)出现在此字符串内的索引[ 从指定索引处开始向前(或向后搜索)]。
String text = "0123hello9012hello8901hello7890";
String word = "hello";
System.out.println(text.indexOf(word)); // prints "4"
System.out.println(text.lastIndexOf(word)); // prints "22"
// find all occurrences forward
for (int i = -1; (i = text.indexOf(word, i + 1)) != -1; i++) {
System.out.println(i);
} // prints "4", "13", "22"
// find all occurrences backward
for (int i = text.length(); (i = text.lastIndexOf(word, i - 1)) != -1; i++) {
System.out.println(i);
} // prints "22", "13", "4"
问题内容: 我目前正在使用正则表达式搜索RSS提要,以查找是否提到了某些单词和短语,然后想在匹配的任一侧提取文本。例如: 我想知道找到“ is”匹配项的位置,以便提取并输出如下内容: 我知道拆分很容易,但是我需要知道字符串中匹配的第一个字符的索引是什么,我不知道该怎么找到 问题答案: 您可以使用,它将返回字符串中“ is”的位置 或从重新使用.start() 实际上,它的匹配“是”来自“ Th 是
问题内容: 更新: 感谢您的所有好评!我尝试了许多不同的正则表达式模式,但不明白为什么m.matches()没有执行我认为应该做的事情。当我改用 m.find() 以及调整正则表达式模式时,我能够到达某个地方。 我想匹配Java字符串中的模式,然后使用正则表达式(如Perl的$&运算符)提取匹配的部分。 这是我的源字符串“ s”: 我要提取“ America / Mexico_City”部分。 我
问题内容: 我试图读取一个流,并希望为每个字符串获取准确的位置(坐标) 我实际上有这样的职位 但是我不知道哪个字符串适合哪个位置。另一方面,在Itext中,我只能使用 但当然根本没有任何位置。 那么,如何获取每个文本(字符串,字符,…)的确切位置? 问题答案: 正如plinth和David van Driessche在他们的答案中已经指出的那样,从PDF文件中提取文本并非易事。幸运的是,iText
问题内容: 我对indexOf方法有疑问。我想在字符串中找到多个“ X”的情况。 假设我的字符串是“ x是x是x是x”,我想在其所有索引位置中找到x。但是,如何在多种情况下执行此操作?使用indexOf甚至可能吗? 我做了int temp = str.indexOf(’x’); 它找到第一个x。我试图做一个for循环,在此循环中我被初始化为字符串的长度,但是由于我不断发现第一个x,所以这没有用。
问题内容: 我试图在问题历史记录中找到问题的答案,但是当他们浏览了几十个我放弃的匹配答案后,它们又回到了一千多个。所以这是我的问题。 我希望能够找到字符串中正好六个数字的第一个序列。给定字符串“一些文本987654321和一些更多的文本123456,以及其他一些文本再次654321和最后的更多文本”,我想找到与123456序列匹配的正则表达式。 我是regex的新手,对它如何工作的简短解释会很有帮
问题内容: 我想在输入字符串中搜索给定的字符串模式。 例如 现在,我需要搜索字符串URL是否包含“ ”。请帮我。 这是一个例子。实际上,我需要检查URL是否包含匹配“ / {a-zA-Z0-9} /”的字符串。 问题答案: 您可以为此使用类。如果您只想在中匹配单词字符,则可以使用以下正则表达式。是的简写。如果您可以,请使用或。