정규표현식(9)
-
[PHP] 정규표현식 이메일 주소 유효성 검사하기
077_PHP 정규표현식 이메일 주소 유효성 검사하기 [요약] 정규표현식을 이용하여 이메일 주소의 패턴을 검사하는 방법에 대해 알아보자 정규표현식을 이용해 이메일 주소가 맞는지 확인하는 패턴식을 만들어보자. 이메일 주소의 @ 앞에는 아이디가 위치하며, 뒤에는 도메인 주소가 위치한다. 우선 아이디부터 패턴식을 만들어보자. 아이디는 보통 영문 대문자, 영문 소문자, 숫자, _(언더바), -(하이픈), .(닷) 등이 섞여서 위치하며 아이디 앞에는 _(언더바), -(하이픈), .(닷)이 위치하지 않는다. -(하이픈)은 [] 안에서 간격을 의미하므로 문자로 사용하려면 앞에 \(역슬래시)를 사용한다. [\-] .(닷)역시 [] 밖에서 모든 문자를 의미하므로 문자로 사용하려면 앞에 \(역슬래시)를 사용한다. \.[]..
2022.09.20 -
[PHP] 정규표현식으로 휴대전화번호 유효성 검사하기
076_PHP 정규표현식으로 휴대전화번호 유효성 검사하기 [요약] 정규표현식을 이용하여 휴대전화번호의 패턴을 검사하는 방법에 대해 알아보자. 어떠한 값이 휴대전화번호의 규직을 지키고 있는지에 대해 검사하는 패턴식을 만들어보자. 예전에는 휴대전화번호의 앞 번호가 통신사마다 각각 달랐으나 지금은 010으로 통일된 번호를 사용한다. 하지만 아직도 011, 016, 017, 018, 019 번호는 사용되고 있다. 이것을 식으로 만들려면 휴대전화번호의 처음에 011, 016, 017, 018, 019가 있어야 함을 의미한다. 여러개의 값이 or의 조건으로 처음에 위치해야 함을 패턴식으로 표현하려면 가로를 사용하고 or의 의미로 기호 '|'를 사용한다. 패턴식으로 만들면 다음과 같다. $pattern = '/^(0..
2022.09.19 -
[PHP] 정규표현식 숫자 검사
075_PHP 정규표현식 숫자 검사 [요약] 변수의 값이 숫자인지를 정규표현식을 사용해 검사하는 방법에 대해 알아보자. 값이 숫자로만 구성되었는지 정규식을 사용해 알아보자. 숫자의 범위는 '0'으로 시작해 '9'로 끝난다. 따라서 범위를 지정하면 다음과 같다. 0-9 숫자로 시작하고 숫자로 끝나게 기호를 추가해 패턴식으로 만들면 다음과 같다. '/^[0-9]$/'; 1byte(1글자) 이상 검사하는 식으로 변경한다면 패턴식은 다음과 같다. 숫자도 1글자당 1byte를 사용한다. '/^[0-9]+$/'; 다음은 값이 숫자로만 구성되어 있는지 확인하는 예제이다. [예제: 77-regExp.php ] 실행결과 위의 결과는 데이터형이 정수(int)형이 숫자를 입력했지만 문자열(string)형 숫자를 입렵해도 패..
2022.09.19 -
[PHP] 정규표현식 영문 소문자 검사
074_PHP 정규표현식 영문 소문자 검사 [요약] 변수의 값이 영문 소문자인지를 정규표현식을 사용해 검사하는 방법에 대해 알아보자. 문자가 영문 소문자로만 구성되었는지를 정규식을 사용해 알아보자. 영문 소문자는 'a'로 시작해 'z'로 끝난다. 따라서 범위를 지정하면 다음과 같다. a-z 소문자로 시작하고 소문자로 끝나는 기호를 추가해 패턴식으로 만들면 다음과 같다. '/^[a-z]$/'; 1byte(1글자) 이상 검사하는 식으로 변경하면 패턴식은 다음과 같다. '/^[a-z]+$/'; 다음은 문자열이 영문 소문자로만 구성되어 있는지 확인하는 예제이다. [예제: 76-1_regExp.php ] 실행결과 만약 위의 코드 변수 str에 영문 소문자가 아닌 값을 하나 넣는다면 패턴식에 어긋나게 된다. 다음은..
2022.09.19 -
[PHP] 정규표현식 영문 대문자 검사
073_PHP 정규표현식 영문 대문자 검사 [요약] 변수의 값이 영문 대문자인지를 정규표현식을 사용해 검사하는 방법에 대해 알아보자. 문자가 영문 대문자로만 구성되었는지를 정규식을 사용해 알아보자. 영문 대문자는 'A'로 시작해 'Z'로 끝난다. 그러므로 간격(구간)을 지정하면 다음과 같다. A-Z 대문자로 시작하고 대문자로 끝나는 기호를 추가해 패턴식으로 만들면 다음과 같다. '/^[A-Z]$/'; 1byte(1글자) 이상 검사하는 식으로 변경한다면 패턴식은 다음과 같다. '/^[A-Z]+$/'; 다음은 문자열이 영문 대문자로만 구성되어 있는지 확인하는 예제이다. [예제: 75-regExp.php ] 실행결과 만약 위의 코드에 영문 대문자가 아닌 값을 하나 넣는다면 패턴식에 어긋나게 된다. 다음은 변수..
2022.09.19 -
[PHP] 정규표현식 한글 검사
072_PHP 정규표현식 한글 검사 [요약] 변수의 값이 한글인지를 정규표현식을 사용해 검사하는 방법에 대해 알아보자. 값이 모두 한글로 구성되어 있는지 확인하는 방법에 대해 알아보자. 한글은 '가'로 시작하여 '힣'으로 끝난다. '가'부터 '힣'까지를 표시하려면 기호 '-'를 사용한다. 간격(구간)을 지정하려면 '['와 ']' 사이의 간격(구간)을 입력한다. 한글로만 구성되어야 하므로 첫글자도 한글, 마지막 글자도 한글이어야 첫 글자를 의미하는 기호인 '^'와 마지막 글자를 의미하는 기호인 '$'를 사용하여 다음의 패턴식을 구성한다. $pattern '/^[가-힣]$/'; 시작하는 기호 '^' 다음으로 간격(구간) [가-힣]가 위치하므로 '가'부터 '힣'까지의 문자가 첫 글자로 위치해야 하며 끝나는 기..
2022.09.19 -
[PHP] 정규표현식 preg_match()
071_PHP 정규표현식 preg_match() [요약] 변수의 값이 숫자인지, 영문인지, 한글인지를 검사하는 정규표현식 preg_match()에 대해 알아보자. 값이 한글로만 구성되어 있는지 영어로만 구성되어 있는지 또는 어떤 특별한 패턴을 지키고 있는지에 대해 체크하려면 정규표현식을 사용한다. 정규표현식을 사용하면 이메일 주소가 옳은 주소형식을 갖췄는지, 이름이 한글로만 이루어졌는지, 전화번호가 올바르게 입력되었는지 등을 검사할 수 있다. 정규표현식의 패턴을 사용하려면 preg_match() 함수를 사용한다. [preg_match() 함수 사용 방법] preg_matchk(패턴, 검사할 텍스트, 반환할 패턴 일치 결과를 받을 변수) 첫 번째 아규먼트인 패턴은 정규실을 이용해 만든 패턴이다. 두 번째 ..
2022.09.19 -
[JavaScript] 자바스크립트 문자열 다루기 (정규 표현식으로 특정 문자 검색하기)
039_자바스크립트 문자열 다루기 (정규 표현식으로 특정 문자 검색하기) [적용] 조건과 일치하는 문자열을 검색하고 싶을 떄 [문법] 메소드 의미 반환 /패턴/.test(문자열) 문자열과 패턴의 일치 여부 확인 진리값 [내용] 정규 표현의 test() 메소드를 사용해 문자열과 패턴의 일치 여부를 확인한다. /J/.test('JavaScript'); // 'J'가 'JavaScript'에 포함되어 있는지 여부. true /^iP/.test(iPhone'); // 'iPhone'의 시작 문자가 'iP'인지 여부. true /\d/.test('래시피'); // '래시피' 문자열 내 숫자 포함 여부. false /Java.*/.test('JavaScript'); // 'Jav' 다음의 문자 'a'가 0회 이상 ..
2022.05.24 -
[JavaScript] 자바스크립트 문자열 다루기 (정규 표현식 사용하기)
038_자바스크립트 문자열 다루기 (정규 표현식 사용하기) [적용] 조건과 일치하는 문자열을 검색하고 싶을 때 많은 문자열을 패턴에 따라 일괄적으로 변환하고 싶을 때 [내용] 정규 표현을 사용하면 문자열의 변환과 검색이 더욱 간편하다. 예를 들어 접속한 브라우저가 iOS인지의 여부를 확인하고 싶을 때 유저 에이전트를 통해 iPhone/iPod/iPad의 포함 여부를 확인할 수 있다. 정규 표현을 사용한 코드와 사용하지 않은 코드를 비교해 보자. // 정규 표현을 사용한 코드 if (/iPhone|iPod|iPad/.test(navigator.userAgent)) { alert('접속한 브라우저는 iOS입니다.'); } // 정규 표현을 사용하지 않은 코드 if ( navigator.userAgent.in..
2022.05.24