English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
서브 표현식/기본 문자 " \ b ”와 중간 괄호 외의 단어 경계와 일치하며, 괄호 내의 공백과 일치합니다(0x08)。
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample { public static void main( String args[] ) { String regex = \\\\bbecause\\\b; Scanner sc = new Scanner(System.in); System.out.println("Enter a string:"); String input = sc.nextLine(); Pattern p = Pattern.compile(regex); Matcher m = p.matcher(input); int count = 0; while(m.find()) { count ++; } System.out.println("matches의 수: ");+count); } }
출력 결과
문자열을 입력하세요: A sentence doesn't end with because because, because is a conjunction matches의 수: 3
다음 Java 예제는 사용자로부터 문자열 값을 읽고 단어 경계 수를 출력합니다.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main( String args[] ) { System.out.println("Enter input string: "); Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "\\b"; //정규 표현식 컴파일 Pattern pattern = Pattern.compile(regex); //검색 매치어 객체 Matcher matcher = pattern.matcher(input); int count =0; while(matcher.find()) { count ++; } System.out.println(count); } }
출력 결과
Enter input string: Hello how are you welcome to w3codebox 14