regular expression 에서 word boundary 질문...
글쓴이: futari / 작성시간: 월, 2004/07/19 - 11:44오전
간단한 예를 들어...
"(?:\*)"
라 할때는 "*" 를 검출해 내는데...
"\b(?:\*)\b"
일때는 *를 검출해 내지 못하고 있습니다 ;
star 양 옆에 공백같은건 없구요.
string 변수에 그냥 star 하나 달랑 들어가 있는데,
검출을 못하네요 ;
java에서 쓰고 있는데,
java에선
"\\b(?:\\*)\\b"
이런식이지요.
물론 "\\b\\*\\b"
요런것도 못찾습니다 ;
아무래도 제가 \b의 역할을 정확히 알지 못해서인것 같은데...
좀 가르쳐 주세요. regular expression을 별로 쓰질 않다가
배워 보려니 헷갈리네요 ㅡ.ㅡ;;
더불어 non-capturing group에 대해서도 좀 알려주시면
많은 도움이 될 것 같습니다.
그럼 좋은 하루 되세요~~~
(__)
Forums:
Regular expression 은 어떤 유틸리티, 어떤 라이브러리를
Regular expression 은 어떤 유틸리티, 어떤 라이브러리를 사용하느냐에 따라 확장 표현식이 크게 차이가 납니다.
특히나 (?: ) 과 같은 확장 표현식은 Perl compatible 이냐 POSIX 냐에 따라서도 지원유무가 있습니다.
세상에는 수많은 정규표현식이 있고 여기저기 다 사용되게 하려면, 매뉴얼 끼고 고생해야하지요..
---
http://coolengineer.com
계속 분석해본 결과로는왜인지는 모르겠으나 star 같은 특수문자가
계속 분석해본 결과로는
왜인지는 모르겠으나 star 같은 특수문자가 들어가면
\b 가 이상하게 먹는 것 같습니다.
dot는 괜찮은 듯 하구요...
그래서 그냥 \b를 사용하지 않고 넘어가기로 했는데,
뭔가 찜찜한건 어쩔 수 없군요 :?
-------------------------
The universe is run by the complex interweaving of three elements: matter, energy, and enlightened self-interest.
- G'kar, Babylon 5
댓글 달기