#java #regex #string #newline
#java #регулярное выражение #строка #новая строка
Вопрос:
Я новичок в «РЕГУЛЯРНОМ ВЫРАЖЕНИИ».И этот вопрос является обучающим и образовательным для регулярных выражений в java.
Я пытаюсь удалить ведущие символы новой строки из строки.(Я знаю, что мы можем сделать это с помощью ‘trim ()’, но я не хочу его использовать).Я использую ‘^ [ r n] ‘ в качестве регулярного выражения, например:
str = "rnrntest";
str.replaceAll("^[rn] ", "");
System.out.print(str);
Я думаю, результат будет
тест
Но результат:
CRLF
CRLF
test
Как вы можете видеть, символы начала новой строки не удаляются.Также я пробую ‘^ s’ или ‘^ s ‘ в качестве регулярного выражения, но результат был таким же.Знаете ли вы, почему эти регулярные выражения не соответствуют ведущим символам новой строки?
Комментарии:
1. Я не очень разбираюсь в Java, но вот общее решение: regex101.com/r/sP3wW6
Ответ №1:
Строка не может быть изменена: replaceAll возвращает измененную строку.
str = str.replaceAll(...);