Метод replaceFirst
Метод replaceFirst класса Matcher заменяет
первое найденное совпадение регулярного выражения
на указанную строку замены и возвращает полученную
строку. В первый параметр мы передаем строку,
которой нужно заменить совпадение. В строке замены
можно использовать ссылки на группы, например
$1, $2 и так далее. Метод заменяет
только первое совпадение, для замены всех совпадений
используется метод replaceAll.
Синтаксис
matcher.replaceFirst(replacement)
Пример
Давайте найдем первое число в строке и заменим его
на слово "X":
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
String str = "abc 123 def 456";
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(str);
String res = matcher.replaceFirst("X");
System.out.println(res);
}
}
Результат выполнения кода:
"abc X def 456"
Пример
Давайте заменим первое совпадение, используя ссылку на группу в строке замены:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
String str = "abc 123 def 456";
Pattern pattern = Pattern.compile("(\\d+)");
Matcher matcher = pattern.matcher(str);
String res = matcher.replaceFirst("[$1]");
System.out.println(res);
}
}
Результат выполнения кода:
"abc [123] def 456"
Смотрите также
-
метод
replaceAll,
который заменяет все совпадения -
метод
find,
который ищет следующее совпадение -
метод
group,
который возвращает найденную группу -
класс
Matcher,
который выполняет поиск по шаблону