Your SlideShare is downloading. ×
[octoberskyjs] Regular Expression
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

[octoberskyjs] Regular Expression

279
views

Published on

for presentation

for presentation

Published in: Technology

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
279
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Javascript The GoodPartsChapter 7. Regular Expression13년 4월 28일 일요일
  • 2. What is RegExp?문자열에서
  • 3.   특정
  • 4.   내용을
  • 5.   검색
  • 6.   /
  • 7.   대체
  • 8.   /
  • 9.   발췌하기
  • 10.   위해
  • 11.   사용.
  • 12.   Javascript에서
  • 13.   사용하는
  • 14.   메소드regexp.execregexp.teststring.matchstring.repacestring.searchstring.split13년 4월 28일 일요일
  • 15. Javascript에서의Regular Expression정규표현식은 정규 언어에 대한 수학적 연구에서 비롯됨. Ken Thompson은 Stephen Kleene 의 이론을type-3 언어에 적용하여 텍스트 에디터/프로그래밍 언어에서 특정 패턴을 찾을 수 있게 실질적인 패턴 매칭 기능을 추가. 정규표현식의 약간의 재해석 + Perl 의 확장구문을 따름.13년 4월 28일 일요일
  • 16. Example : URI Matchvar parse_url = /^(?:([A-Za-z]+):)?(/{0,3})([0-9.-A-Za-z]+)(?::(d+))?(?:/([^?#]*))?(?:?([^#]*))?(?:#(.*))?$/;var url = "http://www.ora.com:80/goodparts?q#fragment     13년 4월 28일 일요일
  • 17. Result : URI Match13년 4월 28일 일요일
  • 18. URI match library...https://code.google.com/p/jsuri/
  • 19.   14가지로
  • 20.   쪼개놓음.
  • 21.   strick
  • 22.   mode
  • 23.   /
  • 24.   loose
  • 25.   mode
  • 26.   구별.
  • 27.   필자의
  • 28.   의견정규 표현식은 더 복잡하게 만들수도 있지만, 길이가 짧고 간단한게 최고!13년 4월 28일 일요일
  • 29. var parse_number = /^-?d+(?:.d*)?(?:e[+-]?d+)?$/i;var test = function(num) {     document.writeln(parse_number.test(num));};test(1);test(number);test(98.6);test(132.21.86.100);test(123.45E-67);          //test(123.45D-67);숫자 일치13년 4월 28일 일요일
  • 30. Regular Expression객체 생성생성 방법정규 표현식 리터럴 사용var my_regexp = /"(?:.|[^"])*"/g;RegExp 객체로 생성var my_regexp = new RegExp(""(?:.|[^"])*"", g);13년 4월 28일 일요일
  • 31. Regular Expression플래그리터럴 플래그 설명g Globali Insensitivem MultilineRegExp 객체 속성객세설명global g flag 사용된 경우 trueignoreCase i flag 사용된 경우 truelastIndex 다음 exec 실행을 위한 시작 지점. 초기값 0.multiline m 플래그가 사용된 경우 truesource 정규 표현식의 소스 텍스트13년 4월 28일 일요일
  • 32. RegExp 객체function make_a_matcher() {     return /a/gi;}var x = make_a_matcher();var y = make_a_matcher();// x와 y는 같은 객체 x.lastIndex = 10; document.writeln(y.lastIndex);           // 10==>> 0이 나온다. 확인 필요. 스펙 바뀌었나?13년 4월 28일 일요일
  • 33. Regular Expression구성요소정규 표현식하나의 정규 표현식 시퀀스 포함정규 표현식 시퀀스하나의 정규 표현식 요소를 포함정규 표현식 요소문자괄호로 묶인 그룹문자 클래스이스케이스 시퀀스13년 4월 28일 일요일
  • 34. Escape?
  • 35.   
  • 36.   
  • 37.   
  • 38.    -> 정규 표현식 요소/문자열에서 모두 이스케이프 되었다는 표시.
  • 39.   
  • 40.   
  • 41.   
  • 42.   
  • 43.   
  • 44.   
  • 45.   
  • 46.   
  • 47.   
  • 48.   f
  • 49.   
  • 50.   
  • 51.   
  • 52.   
  • 53.   
  • 54.   -
  • 55.   form
  • 56.   feed
  • 57.   
  • 58.   
  • 59.   
  • 60.   
  • 61.   
  • 62.   
  • 63.   
  • 64.   
  • 65.   
  • 66.   n
  • 67.   
  • 68.   
  • 69.   
  • 70.   
  • 71.   -
  • 72.   line
  • 73.   feed
  • 74.   
  • 75.   
  • 76.   
  • 77.   
  • 78.   
  • 79.   
  • 80.   
  • 81.   
  • 82.   
  • 83.   r
  • 84.   
  • 85.   
  • 86.   
  • 87.   
  • 88.   
  • 89.   -
  • 90.   carriage
  • 91.   return
  • 92.   
  • 93.   
  • 94.   
  • 95.   
  • 96.   
  • 97.   
  • 98.   
  • 99.   
  • 100.   
  • 101.   t
  • 102.   
  • 103.   
  • 104.   
  • 105.   
  • 106.   
  • 107.   -
  • 108.   tab
  • 109.   
  • 110.   
  • 111.   
  • 112.   
  • 113.   
  • 114.   
  • 115.   
  • 116.   
  • 117.   
  • 118.   u
  • 119.   
  • 120.   
  • 121.   
  • 122.   
  • 123.   -
  • 124.   16진수
  • 125.   유니코드
  • 126.   
  • 127.   
  • 128.   
  • 129.   
  • 130.   
  • 131.   
  • 132.   
  • 133.   
  • 134.   
  • 135.   
  • 136.   b
  • 137.   
  • 138.   
  • 139.   
  • 140.   
  • 141.   -
  • 142.   역스페이스
  • 143.   문자
  • 144.   아님!
  • 145.   문자의
  • 146.   앞/뒤
  • 147.   경계를
  • 148.   표시하는
  • 149.   메타데이터.
  • 150.   
  • 151.   
  • 152.   
  • 153.   
  • 154.   
  • 155.   
  • 156.   
  • 157.   
  • 158.   
  • 159.   d
  • 160.   
  • 161.   
  • 162.   
  • 163.   
  • 164.   [0-9]와
  • 165.   동일.
  • 166.   아라비아
  • 167.   숫자
  • 168.   
  • 169.   
  • 170.   
  • 171.   
  • 172.   
  • 173.   
  • 174.   
  • 175.   
  • 176.   
  • 177.   D
  • 178.   
  • 179.   
  • 180.   
  • 181.   
  • 182.   [^0-9]
  • 183.   
  • 184.   
  • 185.   
  • 186.   
  • 187.   
  • 188.   
  • 189.   
  • 190.   
  • 191.   
  • 192.   s
  • 193.   
  • 194.   
  • 195.   
  • 196.   
  • 197.   
  • 198.   공백
  • 199.   문자
  • 200.   
  • 201.   
  • 202.   
  • 203.   
  • 204.   
  • 205.   
  • 206.   
  • 207.   
  • 208.   
  • 209.   
  • 210.   S
  • 211.   
  • 212.   
  • 213.   
  • 214.   
  • 215.   ^공백
  • 216.   문자
  • 217.   
  • 218.   
  • 219.   
  • 220.   
  • 221.   
  • 222.   
  • 223.   
  • 224.   
  • 225.   
  • 226.   w
  • 227.   
  • 228.   
  • 229.   
  • 230.   [0-9A-Za-z]
  • 231.   
  • 232.   
  • 233.   
  • 234.   
  • 235.   
  • 236.   
  • 237.   
  • 238.   
  • 239.   
  • 240.   W
  • 241.   
  • 242.   
  • 243.   
  • 244.   [^0-9A-Za-z]
  • 245.   
  • 246.   
  • 247.   
  • 248.   
  • 249.   
  • 250.   
  • 251.   
  • 252.   
  • 253.   1
  • 254.   첫
  • 255.   번째
  • 256.   그룹에
  • 257.   캡쳐된
  • 258.   텍스트에
  • 259.   대한
  • 260.   참조
  • 261.   정보.
  • 262.   
  • 263.   
  • 264.   
  • 265.   
  • 266.   
  • 267.   
  • 268.   
  • 269.   
  • 270.   -
  • 271.   중복된
  • 272.   단어를
  • 273.   찾고자
  • 274.   하는
  • 275.   경우
  • 276.   유용함.
  • 277.   
  • 278.   
  • 279.   
  • 280.   
  • 281.   
  • 282.   
  • 283.   
  • 284.   
  • 285.   
  • 286.   
  • 287.   
  • 288.   
  • 289.   
  • 290.   var
  • 291.   double_words
  • 292.   =
  • 293.   /([A-Za-zu00C0-u1FFFu2800-uFFFD-]+)s+1/gi;
  • 294.   
  • 295.   
  • 296.   
  • 297.   
  • 298.   
  • 299.   
  • 300.   
  • 301.   
  • 302.   2
  • 303.   두
  • 304.   번째
  • 305.   그룹에
  • 306.   대한
  • 307.   참조
  • 308.   
  • 309.   
  • 310.   
  • 311.   
  • 312.   
  • 313.   
  • 314.   
  • 315.   
  • 316.   3
  • 317.   세
  • 318.   번째
  • 319.   그룹에
  • 320.   대한
  • 321.   참조13년 4월 28일 일요일
  • 322. Group캡쳐 ()비캡쳐 (?: )긍정적 룩어헤드 (?= )부정적 룩어헤드 (?! )13년 4월 28일 일요일
  • 323. Class특정 문자 집합을 지정ex. 모음(?:a|e|i|o|u) or [aeiou]장점1. 문자의 범위 지정 가능ASCII 특수문자 [!-/:-@[-`{-]2. 부정형 클래스ASCII 특수문자에 해당하지 않는 문자 [^!-/:-@[-`{-]13년 4월 28일 일요일
  • 324. Qualifier요소가 몇 번 일치해야 하는가?/www/ = /w{3}/{3,6}{3,}?*+13년 4월 28일 일요일
  • 325. The End13년 4월 28일 일요일