logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

다양한 언어로 배우는 정규표현식

다양한 언어로 배우는 정규표현식

신야 료마, 스즈키 유스케, 타카타 켄 (지은이), 김완섭 (옮긴이)
제이펍
26,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
알라딘 로딩중
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
알라딘 판매자 배송 10개 13,900원 >
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

다양한 언어로 배우는 정규표현식
eBook 미리보기

책 정보

· 제목 : 다양한 언어로 배우는 정규표현식 
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
· ISBN : 9791185890456
· 쪽수 : 424쪽
· 출판일 : 2016-02-29

책 소개

초보자도 정규표현식을 마스터할 수 있도록 ‘정규표현식이란 무엇인가?’부터 시작해서 정규표현식의 역사/구조/이론은 물론 정규표현식 처리를 위한 VM 설계 방침이나 JIT를 이용한 최적화 방법 등 정규표현식의 모든 것을 다루고 있다.

목차

Chapter 1 [입문] 정규표현식: 메타 문자, 구문, 엔진 _ 1
1.1 정규표현식의 기본 3
1.2 문자열과 문자열 처리 8
1.3 정규표현식의 기본 3연산: 접합, 선택, 반복 16
1.4 정규표현식의 신택스 슈가 25
1.5 캡처와 치환: 정규표현식으로 문자열을 조작한다 34
1.6 정규표현식의 확장 기능: 전방 탐색/재귀/역참조 55
1.7 정규표현식 엔진의 기본 65

Chapter 2 정규표현식의 역사: 이론과 적용 관점을 모두 아우르는 _ 71
2.1 정규표현식의 기원: ‘계산’의 정형화 73
2.2 클레이니에 의한 통일 76
2.3 [적용편] 프로그래머의 친구 80
2.4 프로그래밍 언어와 정규표현식의 만남 86
2.5 최근의 정규표현식 엔진 현황 88

Chapter 3 프로그래머를 위한 고급 정규표현식: 단순한 정규표현식과 최신 엔진의 구조 비교 _ 97
3.1 단순한 정규표현식과 정규 언어 99
3.2 현대 정규표현식의 다양한 기능/구문/구현 111
3.3 읽기 쉬운 정규표현식 작성 120
3.4 현실적으로 타협하기 123

Chapter 4 DFA형 엔진: 유한 오토마타와 결정성 _ 129
4.1 정규표현식과 유한 오토마타 131
4.2 오토마타 구현 142
4.3 [구현 기술] On-the-Fly 구성법 154
4.4 DFA의 장점: 최소화와 동일성 판정 162

Chapter 5 VM형 엔진: 핵심은 ‘백트랙’ _ 167
5.1 기본적인 VM형 엔진 구현 169
5.2 실용적인 VM 구현 177
5.3 오니그모의 VM 구현 190
5.4 VM 이 외 부분 구현 211
5.6 정리 244

Chapter 6 정규표현식 엔진의 3대 기술 동향: JIT 컴파일, 고정 문자열 탐색, 비트 병렬 _ 245
6.1 JIT 컴파일: 자바스크립트와 정규표현식 엔진의 고속화 247
6.2 고정 문자열 탐색을 이용한 고속화 257
6.3 비트 병렬 기법을 이용한 일치 266

Chapter 7 정규표현식의 함정: 백트랙 증가, 일치 동작의 차이 _ 275
7.1 백트랙 증가에 의한 성능 저하와 해결책 276
7.2 일치에 대한 고찰 289
7.3 각기 다른 정규표현식 엔진 간의 동작 차이 296

Chapter 8 정규표현식을 넘어서: 작성하지 않기, 해석하기, 적합하지 않은 구문 알기_ 307
8.1 정규표현식 자동 생성 308
8.2 복잡한 정규표현식의 해석 314
8.3 구문 해석의 세계: 정규표현식보다 표현력이 높은 문법 사용하기 323

Appendix 부록 _ 335
A.1 정규와 비정규의 벽: 정규표현식의 수학적 배경 336
A.2 정규성의 매력: 정규 언어의 진보된 수학적 배경 358

찾아보기 388

저자소개

신야 료마 (지은이)    정보 더보기
도쿄공업 대학교에서 수리 및 계산학을 전공 중인 박사 과정 학생이다. 학부 4학년부터 정규표현식의 매력에 빠져서 연구를 시작했다. 세계에서 가장 빠른 grep 개발, 정규표현식을 사용한 문자열 압축 응용을 연구했으며, 지금은 정규 언어의 고향이라고 할 수 있는 프랑스 파리에서 정규표현식의 수리 구조를 연구하고 있다. 특히, 언어, 대수, 논리 사이의 상관관계와 정규표현식의 합리적 해석에 관심이 많다.
펼치기
스즈키 유스케 (지은이)    정보 더보기
게이오키주크 대학교에서 개방환경과학을 전공 중인 박사 과정 학생이다. 자바스크립트로 프로그래밍을 시작했으며, 브라우저나 자바스크립트 엔진 자체에 관심이 많다. 사양을 엄격하게 만족하는 자바스크립트 엔진을 개발했으며, WebKit 커미터로 CSS JIT 개발, WebKit 및 JavaScriptCore 개발에 공헌했다. 현재는 GPU 가상화를 연구하고 있다. 시스템 소프트웨어나 컴파일러에 관심이 있어서 최근에는 C++에 많은 시간을 투자하고 있다.
펼치기
타카타 켄 (지은이)    정보 더보기
반도체 회사에 근무 중인 임베디드 프로그래머다. 2006년쯤에 당시 사용하고 있던 편집기에서 정규표현식의 후방 참조 기능이 없다는 것을 알았고, 오니구루마 엔진 및 BREGEXP.DLL을 사용해서 bregojing.dll을 만들기 시작했다. 이후 펄P(erl)에 ?K 등의 새로운 정규표현식이 도입된 것을 알고 오니구무마에도 도입될 것을 기대했지만 좌절하고, 결국 2011년에 새로운 엔진인 오니그모를 만들었다. 최근에는 오니그모보다 Vim 배치(batch) 작성을 더 많이 하고 있다.
펼치기
김완섭 (옮긴이)    정보 더보기
약 20년간 일본, 한국, 싱가포르에서 IT 및 GIS/LBS 분야 업무를 담당했다. 일본에서는 일본 정부 기관을 대상으로 한 시스템 통합(SI) 업무를 담당했으며, 야후 저팬으로 직장을 옮겨 야후 맵 개발 담당 시니어 엔지니어로 근무했다. 한국에서는 SK에서 티맵 등 내비게이션 지도 데이터 담당 매니저로 근무했고, 현재는 싱가포르에서 독일계 회사의 설루션 아키텍트로 근무하고 있다. 저서로는 《나는 도쿄 롯폰기로 출근한다》(삶과지식, 2014)가 있으며, 역서로는 《Go 언어로 배우는 웹 애플리케이션 개발》(2024), 《21개의 작고 재미난 파이썬 프로젝트》(2021), 《그림으로 공부하는 IT 인프라 구조, 개정판》(이상 제이펍, 2020) 등 40여 종이 있다.
펼치기

책속에서

초보자도 이 책을 통해 정규표현식을 마스터할 수 있도록 ‘정규표현식이란 무엇인가?’라는 기본부터 시작해서 책 전반에 걸쳐 이해하기 쉽게 설명하고자 많은 노력을 기울였다. 또한, 정규표현식의 역사/구조/이론은 물론 정규표현식 처리를 위한 VM 설계 방침이나 JIT를 이용한 최적화 방법까지 다루고 있어서, 매일 정규표현식을 업무에서 사용하는 프로그래머나 정규표현식을 깊이 있게 배우고자 하는 열혈 학습자 그리고 언어 처리 관련 개발에 관심 있는 독자들도 이 책을 즐길 수 있도록 구성했다. 이론에 관심 있는 독자들을 위해 정규표현식의 수학적 배경에 대해서는 별도의 부록으로 정리했다.


앞에서 본 ‘[0-9]’에서 ‘[’와 ‘]’가 특별한 의미를 지니는 메타 문자이고, 0과 9가 리터럴이다. 또한 ‘?d’도 특별한 의미를 지니므로 메타 문자다. 간단하게 말하면 ‘적혀 있는 그대로(문자 그대로)’ 일치되는 것이 리터럴이고, 그 외에는 메타 문자라고 생각하면 된다.


지금까지 정규표현식은 ‘패턴을 나타내는 것’이라고 설명했다. 이번 절에서는 단순히 패턴을 나타내는 데 그치지 않고, ‘문자열이 어떤 식으로 패턴에 일치하는가’라는 정보를 가지고 문자열을 조작하는 캡처(capture)와 치환에 대해 알아보겠다. 캡처와 치환을 사용하면 1.2절에서 소개한 모든 응용 문제를 정규표현식으로 처리할 수 있다. 프로그래머들이 정규표현식을 더 편리하게 사용할 수 있도록 추가된 기능이다.


이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책