Как сделать чтобы функция работала без учета регистра
Задача:
Прочитать текст из файла и написать функцию, которая считает количество вхождений некоторой строки в этот текст без учета регистра символов. Сама функция должна работать без учета регистра.
Использовать цикл иindexOf
, который принимает начальный индекс, с которого искать.
Просьба подсказать, как сделать функцию без учета регистра? Возможно, через регулярные выражения.
Код.
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class OccurrencesCount {
public static void main(String[] args) throws FileNotFoundException {
String searchString = "word";
File file = new File("out.txt");
System.out.println("Количество вхождений подстроки " + searchString + " = " + getOccurrencesCount(searchString, file));
}
public static int getOccurrencesCount(String searchString, File file) throws FileNotFoundException {
try (Scanner scanner = new Scanner(file)) {
int occurrencesCount = 0;
while (scanner.hasNextLine()) {
String inputString = scanner.nextLine().toLowerCase();
int searchStringStartIndex = 0;
while (true) {
searchStringStartIndex = searchString.indexOf(inputString,searchStringStartIndex);
if (searchStringStartIndex < 0) {
break;
}
occurrencesCount++;
searchStringStartIndex += searchString.length();
}
}
return occurrencesCount;
}
}
}