[notepad++] 정규식으로 특정문자로 시작하고 특정 문자로 끝나는 문장 한 번에 변경하기!
html. xml 등을 활용하다보면 <태그>사이에 있는 문장들을 지워야할 때가 있습니다. 매우 귀찮죠. 그래서 정규식을 활용하여 지울 필요가 있습니다.
예를 들어 <p> 실수 <p> 라는 문장을 반복해서 쓰고 있거나 sitemap의 2024-01-28T11:40:43+09:00와 같은 시간을 지워야할 때 매우 유용합니다.
목차
단계 1: 정규식 패턴 이해
정규식은 특정한 패턴을 가진 문자열을 찾거나 대체하고자 할 때 사용됩니다. 우리가 사용할 패턴은 다음과 같습니다
<[^>]+>
이 패턴은 <로 시작하고 >로 끝나는 모든 문자열을 매치시킵니다. 즉, HTML 태그를 찾아서 제거할 수 있습니다.
2024-01-28T11:40:43+09:00
2024-01-21T01:48:05+09:00
위와 같은 날짜 내용을 지우기 위해서는 다음과 같이 활용할 수 있습니다.
\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\+\d{2}:\d{2}
이 정규식 패턴은 다음과 같이 해석됩니다:
- \d{4}: 4자리 숫자 (연도)
- -: 하이픈
- \d{2}: 2자리 숫자 (월 및 일)
- T: 대문자 'T'
- \d{2}:\d{2}:\d{2}: 2자리 숫자:2자리 숫자:2자리 숫자 (시간)
- \+: 플러스 기호
- \d{2}:\d{2}: 2자리 숫자:2자리 숫자 (시간 오프셋)
단계 2: 정규식의 기호들을 한번 더 이해하기
패턴 | 설명 |
< | 문자열이 <로 시작함을 나타냄 |
[^>]+ | ^는 부정을 나타내고, >는 문자 >를 나타냄. [^>]+는 >가 아닌 모든 문자열을 나타냄. +는 하나 이상의 문자가 나올 수 있음을 나타냄. |
> | 문자열이 >로 끝남을 나타냄 |
단계 3: Notepad++에서 써먹기
- 노트패드 열기: 텍스트 파일을 노트패드로 엽니다.
- 검색 및 바꾸기 열기: Ctrl + H를 눌러 검색 및 바꾸기 창을 엽니다.
- 정규식 사용 설정: "검색 모드" 옵션에서 "정규식"을 선택합니다.
- 검색할 내용 입력: 검색란에 \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\+\d{2}:\d{2}을 입력합니다.
- 바꿀 내용 비워두기: 바꿀 내용란을 비워둡니다.
- 바꾸기: "바꾸기" 또는 "모두 바꾸기" 버튼을 클릭하여 해당 패턴의 문자열을 삭제합니다.
추가 내용
위 내용을 활용하면 제법 많은 것들에 적용할 수 있습니다.
패턴 | 설명 |
\d{3}-\d{3}-\d{4} | 세 개의 숫자, 하이픈, 세 개의 숫자, 하이픈, 네 개의 숫자로 이루어진 전화번호 패턴을 매치합니다. |
[a-zA-Z0-9]+ | 영문 대소문자와 숫자로 이루어진 문자열을 매치합니다. |
\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b | 이메일 주소 패턴을 매치합니다. |
^https?://\S+$ | http 또는 https로 시작하고, 공백이 없는 문자열의 URL을 매치합니다. |
<a\s+(?:[^>]*?\s+)?href="([^"]*)"([^>]*)> | HTML <a> 태그에서 href 속성의 값을 추출합니다. |
사이트맵 작성에서 예시
네, 이해했습니다. sitemap.xml 파일에서 특정한 패턴을 가진 여러 줄을 한 번에 제거하는 경우를 예로 들어보겠습니다.
가령, 다음과 같은 sitemap.xml 파일이 있다고 가정해봅시다
<url>
<loc>https://example.com/page1</loc>
<lastmod>2024-01-21T01:48:05+09:00</lastmod>
</url>
<url>
<loc>https://example.com/page2</loc>
<lastmod>2024-01-28T11:40:43+09:00</lastmod>
</url>
<url>
<loc>https://example.com/page3</loc>
<lastmod>2024-02-05T08:20:15+09:00</lastmod>
</url>
여기서 "lastmod" 태그와 그 내용을 한 번에 제거하고 싶다면, 다음과 같은 정규식을 사용할 수 있습니다
정규식 패턴: <lastmod>.*?</lastmod>
이 정규식은 "lastmod" 태그와 그 내용을 찾아서 한 번에 제거합니다. 위의 예시에서 이 정규식을 사용하면 다음과 같이 결과가 나올 것입니다
<url>
<loc>https://example.com/page1</loc>
</url>
<url>
<loc>https://example.com/page2</loc>
</url>
<url>
<loc>https://example.com/page3</loc>
</url>
'IT' 카테고리의 다른 글
한국형 gpt? - 국내 생성형 AI기업 vs GPT AI 모델 비교 (1) | 2025.03.13 |
---|---|
IT 회사에서 감리 받는다는 것은 무슨 의미일까? (0) | 2024.03.13 |
이진 검색(Binary Search)이란? - 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 중 14찾기 (2) | 2024.01.29 |
VPN이 뭐지? 어디다 쓰는 거지? 처음에 왜 생긴걸까 (0) | 2024.01.28 |
UNIX란 무엇인가? | UNIX 톺아보기 (0) | 2023.07.10 |
댓글