정규 표현을 이해하십시오
정규 표현을 사용한 적이 없다면이 용어와 개념에 익숙하지 않을 수 있습니다. 그래도 그들은 당신이 생각하는 것만 큼 새로운 것이 아닙니다.
하드 드라이브에서 파일을 찾는 방법을 기억하십시오. 당신은 확실히 당신이 찾고있는 파일을 찾는 데 도움이되기 위해 확실히 사용합니까? 문자는 파일 이름의 단일 문자와 일치하고 * 하나 이상의 문자와 일치합니다. 'data? .dat'과 같은 패턴은 다음 파일을 찾을 수 있습니다.
데이터 1.DAT
data2.dat
datax.dat
datan.dat
문자 대신 * 문자가 사용되면? 'data*.dat'은 아래의 모든 파일 이름과 일치 할 수 있습니다.
data.dat
데이터 1.DAT
data2.dat
Data12.dat
datax.dat
dataxyz.dat
파일을 검색하는이 방법은 확실히 유용하지만 매우 제한적입니다. ? 및 * 와일드 카드의 능력은 제한된 능력으로 정기적 인 표현이 할 수있는 일에 대한 개념을 제공 할 수 있지만 정기적 인 표현은 더 강력하고 유연합니다.
정규 표현의 초기 기원
정규 표현의 조상은 인간 신경계의 작동 방식에 대한 초기 연구로 거슬러 올라갈 수 있습니다. 두 신경 생리 학자 인 Warren McCulloch와 Walter Pitts는 이러한 신경망을 설명하는 수학적 방법을 개발했습니다.
1956 년, Stephen Kleene이라는 미국 수학자는 McCulloch와 Pitts의 초기 작품을 기반으로 신경망 이벤트 표기법이라는 제목의 논문을 출판하여 정규 표현의 개념을 소개했습니다. 정규 표현식은 일반 세트라고하는 대수를 설명하는 데 사용되는 표현이므로 정규 표현이라는 용어가 사용됩니다.
그 후이 작업은 UNIX의 주요 발명가 인 Ken Thompson의 계산 검색 알고리즘을 사용한 초기 연구에 적용될 수 있음을 발견했습니다. 정규 표현식에 대한 첫 번째 실제 응용 프로그램은 UNIX의 QED 편집기입니다.
그들이 말했듯이, 남아있는 것은 잘 알려진 역사입니다. 정규 표현식은 그 이후로 텍스트 기반 편집자 및 검색 도구의 중요한 부분이었습니다.
정규 표현식 사용
일반적인 검색 및 교체 작업에서는 정확한 텍스트를 제공해야합니다. 이 기술은 정적 텍스트의 간단한 검색 및 교체 작업에 충분할 수 있지만 유연성이 부족하여 동적 텍스트를 검색하기가 어렵거나 불가능합니다.
정규 표현식을 사용하면 다음을 수행 할 수 있습니다.
문자열 패턴을 테스트합니다. 예를 들어 입력 문자열을 테스트하여 문자열에 전화 번호 패턴 또는 신용 카드 번호 패턴이 있는지 확인할 수 있습니다. 이것을 데이터 검증이라고합니다.
텍스트를 바꾸십시오. 문서에서 정규 표현식을 사용하여 특정 텍스트를 식별 한 다음 모든 삭제를 삭제하거나 다른 텍스트로 바꿀 수 있습니다.
패턴 일치에 따라 문자열에서 서브 스트링을 추출합니다. 텍스트 또는 입력 필드에서 특정 텍스트를 찾는 데 사용할 수 있습니다.
예를 들어, 오래된 자료를 제거하고 일부 HTML 서식 태그를 교체하려면 전체 웹 사이트를 검색 해야하는 경우 정규식을 사용하여 각 파일을 테스트하여 원하는 자료 또는 HTML이 해당 파일 형식에 존재하는지 확인할 수 있습니다. . 이 방법을 사용하면 영향을받는 파일을 삭제하거나 변경하려는 자료가 포함 된 파일로 좁힐 수 있습니다. 그런 다음 정규 표현식을 사용하여 오래된 재료를 제거 할 수 있으며 마지막으로 정규식을 다시 사용하여 교체 해야하는 태그를 찾아 교체 할 수 있습니다.