티스토리 뷰
* Javascript RegEx Api
The RegExp object
RegExp 글로벌 오브젝트는 3가지 사용을 제시한다.
var a = new RegExp("\\b[\\w]{4}\\b","g"); //match all four letter words
//same as...
a = /\b\w{4}\b/g;
a.constructor //RegExp()
"(penalty)Lampard, Frank(1-0)".match(/\b([\w]+),\s?([\w]+)/g);
RegExp.leftContext //"(penalty)"
RegExp.rightContext //"(1-0)"
RegExp.$1 //"Lampard"
RegExp.$2 //"Frank"
var a = /\b[a-z]{10,}\b/i; //match long alpha-only word
RegExp.input=document.body.innerHTML;
a.test(); //true (on google.com)
var expr = /\b([^@\(]+)\(?(\d*)\)?@([^\s]+)\s?/g
var theString = '3@Clubs King(10)@Hearts 3@Spades 5@Diamonds 7@Clubs 2@Hearts 9@Spades Jack(10)@Clubs 4@Diamonds 9@Hearts';
var result = [], total=0, matching = true;
while(true) {
var matching = expr.exec(theString);
var value = parseInt(RegExp.$2 ? RegExp.$2 : RegExp.$1);
if (!matching || (total += value)>21) {
break;
}
alert('&' + RegExp.$1);
result.push(RegExp.$1 + " of " + RegExp.$3);
}
alert(result); //["3 of Clubs", "King of Hearts", "3 of Spades", "5 of Diamonds"]
var a = /(-[\d*\.\d*]{2,})|(-\d+)/g //all negative numbers
"74 -5.6 9 -.5 -2 49".match(a); //["-5.6", "-.5", "-2"]
RegExp.$2; //"-2"
RegExp.leftContext; //"74 -5.6 9 -.5 "
var queryExpr = new RegExp(/\?/);
var getQueryString = function(url) {
url.match(queryExpr);
return RegExp.rightContext;
}
var g = getQueryString("http://www.wunderground.com/cgi-bin/findweather/getForecast?query=94101&hourly=1&yday=138&weekday=Wednesday");
//"?query=94101&hourly=1&yday=138&weekday=Wednesday";
var names = "Smith%20O'Shea%20Cameron%44Brown".split(/[^a-z\']+/gi); //names = ["Smith", "O'Shea", "Cameron", "Brown"];
RegExp.lastMatch; //"%44"
var time = "Two o'clock PM".split(/(o'clock)/);
//time = ['Two','PM'] (IE)
//time = ['Two', 'o,clock', 'PM'] (FF, webkit)
var a = "Smith, Bob; Raman, Ravi; Jones, Mary";
a.replace(/([\w]+), ([\w]+)/g,"$2 $1"); //"Bob Smith; Ravi Raman; Mary Jones"
var a = "California, San Francisco, O'Rourke, Gerry";
a.replace(/([\w'\s]+), ([\w'\s]+), ([\w'\s]+), ([\w'\s]+)/,"$4 $3 lives in $2, $1"); //"Gerry O'Rourke lives in San Francisco, California"
var chars = "72 101 108 108 111 87 111 114 108 100 33";
chars.replace(/(\d+)(\s?)/gi,function(all,$1){return String.fromCharCode($1)}); //"Hello World!"
'웹개발 > Javascript' 카테고리의 다른 글
| Understanding JavaScript Prototypes. (0) | 2010.12.14 |
|---|---|
| Javascript Namespace 정리 (0) | 2010.12.14 |
| Javascript 키워드 몇가지 (0) | 2010.12.14 |
| 자바 스크립트 String 메서드 Split , Join 사용 예 (0) | 2010.12.14 |
| 자바스크립트 여러가지 (0) | 2010.09.10 |
댓글