<title> 정규식 규칙 </title>
이것만 봐서는 전혀 감이 안오지만..
한글자에 대해서 | |
---|---|
[abc] | a,b,c 중 아무 한 문자라도 있으면 선택 |
[^abc] | a,b,c 를 제외한 나머지 어떤 문자라도 나오면 선택 |
[a-z] | a ~ z 사이의 어떤 글자라도 |
[a-zA-Z] | a ~ z , A ~ Z 사이의 어떤 알파벳 문자라도 |
미리 정의된 글자셋을 선택 | |
\s | [ \t\n\r\f\v] 왼쪽의 글자(공백문자들) 가운데 어떤 문자인 경우 |
\S | [^ \t\n\r\f\v] 왼쪽의 글자(공백문자들)가 아닌 다른 어떤 문자의 경우 |
\d | 0~9 사이의 숫자를 찾으면 |
\D | 숫자가 아닌 ([^0-9]) 문자를 찾으면 |
\w | 영문자, 숫자의 글자를 찾으면 ([a-zA-Z0-9_]) |
\W | 영문자, 숫자를 제외한 다른 글자를 찾으면 |
\b | \w 또는 \W 에 해당되는 단어의 사이를 찾으면 |
\B | 단어 끝 부분이 아닌 곳 |
\<글자> | \ 다음에 오는 문자를 순수 문자로 인식. '.'과 같은 키워드를 글자로 사용하려고 할때 씁니다. |
선택지, 그룹화 | |
() | 찾으려는 문자열을 한개의 그룹으로 본다. 매우 요긴함. |
| | 왼쪽 아니면 오른쪽 문자 중 어떤 것을 먼저 찾으면 (^Css)|(cSS$) Css로 시작되는 문자열 또는 cSS로 끝나는 문자열을 찾으면 |
^ | 문자열의 시작 부분에 찾으려는 글자가 있는 경우 ^aB aB로 시작되는 문자열을 찾는다. |
$ | 문자열의 끝 부분에 찾으려는 글자가 있는 경우 |
검색된 문자열의 일부분에 대해서, 뭔가 하고 싶을때
라든지, 경험 부족으로 다른 경우는 잘 모르겠지만.
간단한 예
| toggle breakpoint f9 | ::: |
'f9' 다음 개행 문자만 선택하고 ':: |' 다음 부분의 개행문자는 무시하고 싶을때
(?<=[^|])\n
{n,m} | 앞쪽의 선택 규칙이 n 번 이상, m 번 미만 나오는 규칙. (와우..)(n > ? > m) |
{n,} | Match the previous item n or more times |
{n} | Match exactly n occurrences of the previous item |
? | 없거나 하나인 문자 찾기 (이전 검색 결과로부터) {0,1} |
+ | Match 1 or more occurrences of the previous item {1,} |
* | Match 0 or more occurrences of the previous item {0,} |
g | “Global” – find all matches in the string rather than just the first |
i | “case Insensitive” – ignore character case when matching |
m | “Multiline” – search over more than one line if the text contains line breaks |
웹에서 미리 확인 가능한..
그외
##dkfjdkfjdkfjdkjfkdjf (or) ##dkfjdkfjdkfjdkjfkdjf
에서 '#'으로 줄이 시작되는지 검색하기 위해서
줄의 시작에 공백이 있거나 (없거나) 상관없이 #으로 시작되는 글자들
^[ \t]*#
줄의 시작에 공백이 있거나 (없거나) 상관없이 #이 두개로 시작되는지 확인 있다면 체크
^[ \t]*#{2}
아래처럼 입력되는 라인에서 각 토큰을 분리하기 위한 정규표현, 조건은
starbucks 300 2010/1/27 starbucks , 300 , 2010/1/27 starbucks 300 2010/1/27
이 스트링에서, 각각 토큰을 구분하기 위해서 찾기 위한 코드
basic code : ([ ]{2})|,|\t upgrade code : ([ ]{2})|\t|([\t ]*,[\t ]*)
설명
아직 연속 검색은 무리
sports 영역만 ( “:/ / ~ .” 사이의 문자 )
http://sports.khan.co.kr/club3/board.html?bid=8&aid=154484 http://sports.khan.co.kr/club3/board.html?bid=8&aid=154483 http://sports.khan.co.kr/club3/board.html?bid=8&aid=154482
msdn에서 사용한 참고 예정
http://search.microsoft.com/us/Search.asp?qu=atl&boolean=ALL#results "({[^:/?#]+}:)?(//{[^/?#]*})?{[^?#]*}(?{[^#]*})?(#{.*})?"
이걸 사용하면 , 아래 같은 결과가 나온다는데..
0: "http" 1: "search.microsoft.com" 2: "/us/Search.asp" 3: "qu=atl&boolean=ALL" 4: "results"
이해한 부분
[^:/?#]+ --> http (1) ://search.microsoft.com/us/Search.asp?qu=atl&boolean=ALL#results 로 검색시작 [^/?#]* --> search.microsoft.com (2) ([^://]+)?=([^.?]*)