반응형
정규표현식에 대한 정의는 이전 포스팅에서도 많이 다룬적이 있기에 해당 참고 포스팅을 참고 하면 도움 될것이다.
이전 포스팅에서는 파이선에 대한 포스팅이 주를 이뤘는데 이번 포스팅에서는 자바에서의 정규 표현식을 정리 해보려고 한다.
자바에서 정규표현식을 사용하기 위해서는
java.util.regex 에 있는 클래스를 사용하게 되고 주로 Pattern / Matcher 를 사용하게 된다.
Pattern은 matches() 메서드를 지원한다.
주어진 패턴이 주어진 정규 표현식에 일치하는지 체크를 한다.
아래와 같이 사용이 된다.
String pattern = "^[0-9]*$"; // 숫자만 String str = "123123"; boolean result = Pattern.matches(pattern, str); System.out.println(result); // true |
매칭되는지 여부에 따라 True False 가 리턴이 된다.
그밖에 다양한 메서드가 있고 아래와 같다.
pattern(); | 컴파일된 정규표현식 String 반환 |
compile(String regex); | 주어진 정규표현식으로부터 패턴 생성 |
matcher(CharSequence input); | 대상 문자열이 패턴과 일치할 경우 t f 반환 |
asPredicate(); | 문자열 일치시키는데 사용할수 있는 Predicate 작성 |
split(CharSequence input); | 문자열을 주어진 인자값 패턴에 따라 분리 |
Matcher
Pattern 이 문자열이 정규 표현식에 일치하는지 체크라면
Matcher는 문자열 패턴을 해석하고 패턴과 일치하는지 체크할때 사용이 된다.
비슷하기도 한데, 적절하게 사용을 하면 된다.
Pattern pattern = Pattern.compile("^[0-9]*$"); String str = "123123"; Matcher matcher = pattern.matcher(str); System.out.println(matcher.find()); |
매칭되는지 여부에 따라 True False 가 리턴이 된다.
그밖에 다양한 메서드가 있고 아래와 같다.
matches(); | 대상 문자열과 패턴이 일치 하는지 |
find() | 대상문자열과 패턴이 일치하는지, 그리고 이동 |
find(int start) | start인자로 받은 위치부터 매칭 |
start(); | 매칭되는 문자열의 시작 위치 |
start(int group); | 매칭되는 그룹이 있는 시작 위치 |
end() | 매칭되는 문자열의 끝 바로 다음 위치 |
end(int group); | 매칭되는 그룹이 있는 끝 바로 다음 위치 |
group() | 매칭 된 부분 반환 |
group(int group); | 매칭된 부분중 group 그루핑 매칭 부분 |
groupCount(); | 패턴 내 그룹핑한 전체 갯수 반환 |
자세한 문법은 아래 참고 포스팅에서 참고 바란다.
참고 포스팅
https://thenicesj.tistory.com/334
반응형
'IT > Java' 카테고리의 다른 글
Optional – orElse() 와 orElseGet() (37) | 2023.06.16 |
---|---|
[eclipse] Ant 란? (36) | 2023.06.15 |
자바에서 Null 체크 관련(if) (44) | 2023.06.09 |
[Jackson] JsonNode, ObjectNode, ArrayNode (35) | 2023.06.06 |
kafka 실습 (springboot에서 활용) (31) | 2023.06.05 |
댓글