English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java RegEx을 사용하여 단어 경계를 어떻게 매칭하나요?

메타 캐릭터 "\\b"를 사용하여 단어 경계를 매칭할 수 있습니다.

예제1

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("문자열을 입력하세요");
      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);
   }
}

출력 결과

문자열을 입력하세요
이것은 샘플 텍스트입니다
단어 경계 수: 10

예제2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FirstLetterExample {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("샘플 텍스트를 입력하세요: ");
      String data = sc.nextLine();
      String regex = "\\b[a-zA-Z]";
      //패턴 객체를 생성합니다
      Pattern pattern = Pattern.compile(regex);
      //Matcher 객체를 생성합니다
      Matcher matcher = pattern.matcher(data);
      System.out.println("지정된 문자열의 각 단어의 첫 글자: ");
      while(matcher.find()) {
         System.out.print(matcher.group());+" ");
      }
   }
}

출력 결과

샘플 텍스트를 입력하세요:
National Intelligence Agency Research & Analysis Wing
지정된 문자열의 각 단어의 첫 글자:
N I A R A W
좋아할 만한 것