티스토리 뷰
* 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 |
댓글