콘텐츠로 건너뛰기
Home » regular expression

regular expression

정규표현식의 개념과 기초 문법

작성한지 10년이 지났는데도 notepad++ 관련한 키워드로 꾸준히 유입이 발생하고 있고,  그게 정규표현식 관련한 글인데 별로 내용이 좋은 글이 아니다. (몇 가지 기초적인 문법만 요리책 식으로 나열해 놓은 거라…) 그래서 정규표현식의 개념과 기초 문법 그리고 몇 가지 이 블로그에서 다루는 언어들에서 정규표현식을 어떻게 쓰는지, 어떤 것들을 할 수 있는지 등에 대해서 알아볼 계획이다.

오늘은 그 첫 번째 순서로, 정규표현식의 개념과 가장 기초가 되는 패턴 문법에 대해서 살펴보려고 한다.

더 보기 »정규표현식의 개념과 기초 문법

vim의 정규식 기호와 very magic 모드

vim의 문자열 검색, 치환 기능은 패턴 매칭에 의한 것이며, 이 패턴 매칭은 정규식에 기반을 두고 있다. 그런데 정규식 문법을 조금 알고 있는 상태에서 vim의 정규식을 사용하면 깊은 빡침을 느끼거나 심한 멀미를 겪을 수 있다. 왜냐하면 정규식은 딱히 하나의 정해진 표준도 없거니와 기능과 편의를 위해서 여러 갈래로 나뉘어져 있고 vim에서는 상황에 따라서 서로 다른 기준을 사용해서 패턴을 파싱하기 때문이다. 예를 하나 들어보자.

(this)isnot{this}nor[this]

이런 문자열이 있다고 할 때, 괄호들을 포함한 this를 검색, 즉 (this), {this}, [this]를 검색하려면 다음의 패턴을 사용한다.더 보기 »vim의 정규식 기호와 very magic 모드

현재 페이지의 URL에서 도메인 주소만 구하기

document.location.href 속성 값은 http://, https:// 로 시작하는 페이지의 전체 URI 정보를 나타낸다. 이 속성에 정규식을 매칭하여 도메인에 해당하는 부분만을 잘라낼 수 있다. 여기서 사용된 패턴은 다음과 같이 설명된다. http[s]:// 다음에 위치하며 도메인 뒤에는 문자열이 끝나거나 /,?,& 따위의 파라미터 연결자가 올 수 있다. 파라미터 연결자 앞까지를 끊어서 모든 문자를 매치한다.