English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이java.util.regex.Matcher에서이 클래스는 매칭 작업을 수행하는 엔진을 대표합니다. 이 클래스는 생성자가 없으며, 다음과 같이 사용할 수 있습니다.matches()
java.util.regex.Pattern 메서드를 생성/객체를 얻습니다.
이 (Matcher) 클래스의replaceFirst()이 메서드는 문자열 값을 받아 입력 텍스트에서 첫 번째 일치하는 서브 시퀀스를 대체하고 결과를 반환합니다.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ReplaceFirstExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("입력 텍스트를 입력하세요: "); String input = sc.nextLine(); String regex = "[#]"; //패턴 객체를 생성합니다 Pattern pattern = Pattern.compile(regex); //Matcher 객체를 생성합니다 Matcher matcher = pattern.matcher(input); int count = 0; while(matcher.find()) { count++; } //검색에 사용하는 패턴 System.out.println("The # 문자가 발생했습니다 ");+count+" 주어진 텍스트에서 횟수 "); //첫 번째 발생하는 경우 대체 String result = matcher.replaceFirst("@"); System.out.println("문자열에서 첫 번째 발생하는 #를 @으로 대체한 후의 텍스트 \n");+result); } }
출력 결과
입력 텍스트를 입력하세요: 입력 텍스트를 입력하세요: Hello# How # are# you # welcome to Tutorials#point The # 문자가 발생했습니다 5 주어진 텍스트에서 발생하는 횟수 문자열에서 첫 번째 발생하는 #를 @으로 대체한 후의 텍스트 Hello@ How # are# you # welcome to Tutorials#point
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ReplaceFirstExample { public static void main(String args[]) {}} //사용자로부터 문자열을 읽습니다 System.out.println("문자열을 입력하세요"); Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "\\s+"; //정규 표현식을 컴파일합니다 Pattern pattern = Pattern.compile(regex); //매칭기 객체를 검색합니다 Matcher matcher = pattern.matcher(input); //모든 공백 문자를 단일 공백으로 대체합니다 String result = matcher.replaceFirst("_"); System.out.print("초기 공백을 '_'로 대체한 후의 텍스트:\n"+result); } }
출력 결과
문자열을 입력하세요 hello this is a sample text with irregular spaces 초기 공백을 '_'로 대체한 후의 텍스트: hello_this is a sample text with irregular spaces