>백엔드 개발 >PHP 튜토리얼 >10가지 실용적인 PHP 정규 표현식 요약_php 팁

10가지 실용적인 PHP 정규 표현식 요약_php 팁

WBOY
WBOY원래의
2016-05-16 20:34:231099검색

이 기사의 예에서는 실용적인 PHP 정규 표현식 10가지를 요약하여 설명하고 참고용으로 공유합니다. 세부 내용은 다음과 같습니다.

정규식은 프로그램 개발에서 중요한 요소입니다. 특정 문자, 단어, 계산과 같은 텍스트를 설명하거나 일치시키는 데 사용되는 문자열을 제공합니다. 그러나 어떤 경우에는 정규식을 사용하여 문자열의 유효성을 검사하는 것이 복잡하고 시간이 많이 걸립니다. 이 기사에서는 PHP에서 정규식을 작성하는 10가지 일반적이고 실용적인 방법을 소개합니다. 이것이 귀하의 작업에 도움이 되기를 바랍니다.

1. 이메일 주소 확인

이메일을 확인하는 데 사용되는 정규식입니다. 하지만 효율적이고 완벽한 솔루션은 아닙니다. 여기서는 권장하지 않습니다.

코드 복사 코드는 다음과 같습니다.
$email = "test@ansoncheung.tk";
if (preg_match('/^[^0-9][a-zA-Z0-9_] ([.][a-zA-Z0-9_] )*[@][a-zA-Z0-9_] ( [.][a-zA-Z0-9_] )*[.][a-zA-Z]{2,4}$/',$email)) {
echo "이메일은 괜찮습니다.";
} 그 밖의 {
echo "잘못된 이메일 주소 형식";
}

​이메일 주소를 보다 효율적으로 확인하려면 filer_var을 사용하는 것이 좋습니다.

코드 복사 코드는 다음과 같습니다.
if (filter_var('test email@ansoncheung', FILTER_VALIDATE_EMAIL )) {
echo "이메일은 괜찮습니다.";
} 그 밖의 {
echo "이메일 주소 형식이 잘못되었습니다.";
}

2. 사용자 이름 확인

문자, 숫자(A-Z, a-z, 0-9), 밑줄, 최소 5자, 최대 20자를 포함하는 사용자 이름을 확인하는 예입니다. 동시에 필요에 따라 최소값과 최대값을 합리적으로 수정할 수도 있습니다.

코드 복사 코드는 다음과 같습니다.
$username = "user_name12";
if (preg_match('/^[a-zd_]{5,20}$/i', $username)) {
echo "귀하의 사용자 이름은 괜찮습니다.";
} 그 밖의 {
echo "사용자 이름 형식이 잘못되었습니다.";
}

3. 전화번호 확인

미국 전화번호 인증 예시입니다.

코드 복사 코드는 다음과 같습니다.
$phone = "(021)423-2323";
if (preg_match('/(?d{3})?[-s.]?d{3}[-s.]d{4}/x', $phone)) {
echo "전화번호는 괜찮습니다.";
} 그 밖의 {
echo "전화번호가 잘못되었습니다.";
}

4. IP 주소 확인

IPv4 주소를 확인하는 데 사용되는 예입니다.

코드 복사 코드는 다음과 같습니다.
$IP = "198.168.1.78";
if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]) .){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/' ,$IP)) {
echo "귀하의 IP 주소는 정상입니다.";
} 그 밖의 {
echo "잘못된 IP 주소입니다.";
}

5. 우편번호 확인

우편번호 확인에 사용되는 예시입니다.

코드 복사 코드는 다음과 같습니다.
$zipcode = "12345-5434";
if (preg_match("/^([0-9]{5})(-[0-9]{4})?$/i",$zipcode)) {
echo "우편번호는 괜찮습니다.";
} 그 밖의 {
echo "우편번호가 잘못되었습니다.";
}

6. SSN(사회보장번호) 확인

미국 SSN 인증 예시입니다.

코드 복사 코드는 다음과 같습니다.
$ssn = "333-23-2329";
if (preg_match('/^[d]{3}-[d]{2}-[d]{4}$/',$ssn)) {
echo "귀하의 SSN은 괜찮습니다.";
} 그 밖의 {
echo "SSN이 잘못되었습니다.";
}

7. 신용카드 번호 확인

코드 복사 코드는 다음과 같습니다.
$cc = "378282246310005";
if (preg_match('/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6011[ 0-9]{12}|3(?:0[0-5]|[68][0-9])[0-9]{11}|3[47][0-9]{13}) $/', $cc)) {
echo "귀하의 신용카드 번호는 정상입니다.";
} 그 밖의 {
echo "신용카드 번호가 잘못되었습니다.";
}

8. 도메인 이름 확인

코드 복사 코드는 다음과 같습니다.
$url = "http://ansoncheung.tk/ ";
if (preg_match('/^(http|https|ftp)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0- 9_-]*) ):?(d )?/?/i', $url)) {
echo "귀하의 URL은 괜찮습니다.";
} 그 밖의 {
echo "잘못된 URL입니다.";
}

9. 특정 URL에서 도메인 이름 추출

코드 복사 코드는 다음과 같습니다.
$url = "http://ansoncheung.tk/ 기사";
preg_match('@^(?:http://)?([^/] )@i', $url, $matches);
$host = $matches[1];
echo $host;

10. 텍스트에서 키워드를 강조표시하세요

코드 복사 코드는 다음과 같습니다.
$text = "AnsonCheung.tk의 샘플 문장, 일반 표현식은 웹 프로그래밍에서 인기가 있습니다. 이제 우리는 정규 표현식을 배웁니다. 정규 표현식(regex 또는 regexp로 축약되며 복수형 regexes, regexps 또는 regexen)은 정규 표현식으로 해석될 수 있는 공식 언어로 작성됩니다. 프로세서";
$text = preg_replace("/b(regex)b/i", '1', $text);
$text 에코;

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.