Я пытаюсь «обернуть» поиск, игнорируя \ n при использовании ether indexOf или regex Pattern.Я не могу просто удалить все символы новой строки, так как тогда найденные индексы будут неправильными.
Например:
Matcher matcher = Pattern.compile("dog").matcher("cat\n do\ng cow");
matcher.find();
int start = matcher.start();
int end = matcher.end();
System.out.println("Start: "+start+" End: "+end);
Должен вывести:
Start: 5 End: 9
Если яудалите символы новой строки,
Matcher matcher = Pattern.compile("dog").matcher("cat\n do\ng cow".replaceAll("\n",""));
Тогда индексы будут испорчены:
Start: 4 End: 7
Примечание: я также собираюсь использовать более сложное регулярное выражение, чем в примере.
Я реализую функцию поиска в текстовом редакторе и пытаюсь создать опцию «обтекание».Есть идеи?