Regular Expression Test Site
http://www.regular-expressions.info/javascriptexample.html
- Regexp 란은 / / 를 쓰지 않고 바로 regular expression 을 적어주면 된다.
- [Test Match] 버튼은 subject string 에 대한 regexp 적용 결과를 true/false alert 해준다.
- [Show Match] 버튼은 match된 string part과 포지션이 alert 결과로 나옴.
- [Replace] 버튼은 regular expression 에 맞춰 replace된 결과물이 "Result" textfield 에 나옴.
출처 : http://www.w3schools.com/jsref/jsref_obj_regexp.asp
Basic Form
- var regexp = /패턴/플래그;
// escape 문자는 \ 를 붙여서 표현.
- var regexp = new RegExp( "패턴", 플래그 );
// escape 문자는 \\ 를 붙여서 표현. 2개라는 것에 주의
Modifier ( 플래그 )
- i : case-insensitive
- g : global match ( 명시되지 않으면 첫번째 찾은 녀석만 해당 )
- m : multiline matching
Brackets
- [abc] : abc 중에 하나라도 들어감
- [^abc] : abc중에 하나라도 들어가지 않음
- [0-9] : 0~9 중 하나라도 들어감
- [A-z] : upper lower 상관없이 아무 글자가 하나라도 들어감
- [red|blue|green) : 세 단어 중 하나라도 들어감
Metacharacters
- . : newline 이나 terminator 없는 single char
- \w : word char
- \W : non-word char
- \d : a digit char
- \D : a non-digit char
- \s : whitespace
- \S : non-whitespace
- \b : word의 시작점
- \B : word의 시작점이 아님
- \0 : null char
- \n : new line char
- \f : form feed char : 커서를 다음 페이지의 최초 위치로 이동시키는 문자
- \r : carriage return : 커서를 현재 행에 맨 좌측으로 옮기기.
- \t : tab char
- \v : vertical tap char
- \xxx : an octal number xxx
- \xdd : a hexadecimal number dd
- \uxxxx : hexadecimal xxxx 로 표시된 Unicode char
Quantifiers
- n+ : 적어도 한개의 n 이 있음 ( n, nn, nnn )
- n* : n이 있을수도 없을수도 있음 ( , n, nn, nnn )
- n? : n이 없거나 한번 있음 ( , n )
- n{X} : n이 X갯수만큼 있음
- n{X,Y} : n이 X 이상 Y이하 갯수만큼 있음
- n{X,} : n이 X개 이상 있음
- n$ : n이 string의 마지막에 옮.
- ^n : string 의 최초에 n 이 옮.
- ?=n : n 바로 앞에 오는 string
( ex) is this all there is pattern) is(?=all) result) is ( this에 있는 is )
- ?!n : n 바로 다음에 오지 않는 string
RegExp Object Properties
- patt.lastIndex : matching 된 last index
var str="The rain in Spain stays mainly in the plain";
var patt1=/ain/g;
while (patt1.test(str)==true)
{
document.write("'ain' found. Index now at: " + patt1.lastIndex);
document.write("<br />");
}
</script>
- patt.multiline : multiline 이 설정되었는가
- patt.global : global이 설정되었는가?
- patt.ignoreCase : ignoreCase가 설정되었는가?
- patt.source : RegExp pattern text
RegExp Object Methods
- exec() : first match 를 돌려줌.
- test() : match 결과를 true/false로 돌려줌.
'프로그래밍 놀이터 > Web' 카테고리의 다른 글
[HTML] xhtml 이 뭔지 간단히 알아보자. (0) | 2012.10.06 |
---|---|
[HTML] html multimedia 관련 태그들 (0) | 2012.10.06 |
[Script] JavaScript References Full Version. (0) | 2012.09.26 |
[Script] JavaScript Tutorial ( 기초강좌 ) (0) | 2012.09.26 |
[Script] $(function(){}) 와 $(document).ready(function(){}) 의 차이. (0) | 2012.09.26 |
댓글