자바에서 정규식을 이용해 숫자를 추출해 봅니다.
들어온것이 숫자로만 이루어져 있는지도 확인해 봅니다.
정규식 패턴을 한번만 만들기
1 |
|
- Pattern을 계속 만들어 내는것은 자원낭비가 심하다.
- 그러므로, 해당 부분을
static
으로 한번만 만들게 해놓고 재활용해 사용한다.
모두가 숫자인지 확인하기
1 |
|
matcher.matches()
를 통해 전부가 일치되는지 확인한다.
숫자만 추출해내기
1 |
|
- 매칭되는 것을 찾는 matcher를 만들어두고, 매칭되는게 있다면
group()
을 통해 매칭되는 문자열을 뽑아낸다.
1 |
|
- 해당 방법으로는 불가능하다.
- 일치되는 경우가 존재하는경우,
find()
는 계속 같은 위치만 보게 되기 때문이다.find()
는 찾은곳의 위치로 이동한다.- 이후
find()
를 호출한다면 해당 위치부터 정규식에 매칭되는것이 있는지 찾아나간다.
전체 소스
1 |
|
테스트에 사용한 테스트 코드
1 |
|
Reference
- https://coding-factory.tistory.com/529