PHP 정규식 이론

墨辰丷
풀어 주다: 2023-03-25 22:42:01
원래의
1562명이 탐색했습니다.

이 글은 주로 PHP 정규 표현식에 대한 이론적 지식을 소개합니다. 관심 있는 친구들이 참고하면 좋습니다.

1. 검사 숫자 표현

1 숫자:
^[0-9]*$
2 n자리 숫자:
^d{n}$
3 n자리 이상 숫자:
^d{ n ,}$
4 m-n 자리 숫자:
^d{m,n}$
5 0으로 시작하고 0이 아닌 숫자:
^(0|[1-9][0-9]*)$
6 0이 아닌 숫자로 시작하고 최대 소수점 이하 두 자리까지의 숫자:
^([1-9][0-9]*)+(.[0-9]{1,2})?$
7 with 1- 2자리 양수 또는 음수 소수:
^(-)?d+(.d{1,2})?$
8 양수, 음수 및 소수:
^(-|+)?d+(.d+)? $
9 소수점 이하 2자리의 양의 실수:
^[0-9]+(.[0-9]{2})?$
10 소수점 이하 1~3자리의 양의 실수:
^[0 -9] +(.[0-9]{1,3})?$
11 0이 아닌 양의 정수:
^[1-9]d*$ 또는 ^([1-9][0-9] *){ 1,3}$ 또는 ^+?[1-9][0-9]*$
12 0이 아닌 음의 정수:
^-[1-9][]0-9"*$ 또는 ^ -[1 -9]d*$
13 음수가 아닌 정수:
^d+$ 또는 ^[1-9]d*|0$
14 양수가 아닌 정수:
^-[1-9]d*| 0$ 또는 ^( (-d+)|(0+))$
15 음수가 아닌 부동 소수점 수:
^d+(.d+)?$ 또는 ^[1-9]d*.d*|0.d *[1-9]d *|0?.0+|0$
16 양수가 아닌 부동 소수점 수:
^((-d+(.d+)?)|(0+(.0+)?)) $ 또는 ^(-([1- 9]d*.d*|0.d*[1-9]d*))|0?.0+|0$
17 양의 부동 소수점 수:
^[1 -9]d*.d*|0 .d*[1-9]d*$ 또는 ^(([0-9]+.[0-9]*[1-9][0-9]*) |([0-9]*[1 -9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$
18 음수 부동 소수점 수:
^-([ 1-9]d*.d*|0.d*[1-9]d*)$ 또는 ^(-(([0-9]+.[0- 9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]* [1-9][0-9]* )))$
19 부동 소수점 수:
^(-?d+)(.d+)?$ 또는 ^-?([1-9]d*.d*| 0.d*[1-9]d*| 0?.0+|0)$

2. 체크문자 표현

1 한자:
^[u4e00-u9fa5]{0,}$
2 영어 및 숫자:
^[A-Za-z0 -9]+$ 또는 ^[A-Za-z0-9]{4,40}$
3 길이가 3-20인 모든 문자:
^.{3,20 }$
4는 영문 26자로 구성 문자열:
^[A-Za-z]+$
5 영문 대문자 26자 문자열:
^[A-Z]+$
6 영문 소문자 26자 문자열:
^ [a-z]+$
7 숫자와 영문 26자로 구성된 문자열:
^[A-Za-z0-9]+$
8 숫자, 영문 26자 또는 밑줄로 구성된 문자열:
^ w+$ 또는 ^ w{3,20}$
9 중국어, 영어, 밑줄 포함 숫자:
^[u4E00-u9FA5A-Za-z0-9_]+$
10 중국어, 영어, 숫자, 밑줄 및 기타 기호 제외:
^[ u4E00-u9FA5A-Za-z0-9]+$ 또는 ^[u4E00-u9FA5A-Za-z0-9]{2,20}$
11 ^%&',;=?$" 등을 입력할 수 있습니다. 문자 :
[^%&',=?$x22]+
12 ~를 포함하는 문자는 입력할 수 없습니다:
[^~x22]+

3.

1. 이메일 주소:
^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
2, 도메인 이름:
[a-zA - Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/ ?
3, 인터넷URL:
[a-zA-z]+://[^s]* 또는 ^http://([w-]+.)+[w-]+(/[w-. / ?%&=]*)?$
4, 휴대폰 번호:
^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7| 8| 9]|18[0|1|2|3|5|6|7|8|9])d{8}$
5 , 전화번호 ("XXX-XXXXXXX", "XXXX-XXXXXXXX", " XXX- XXXXXXX", "XXX-XXXXXXXX", "XXXXXXX" 및 "XXXXXXXX):
^((d{3,4}-)|d{3.4}-)?d{7,8}$
6 국내 전화 번호( 0511-4405222, 021-87888822):
d{3}-d{8}|d{4}-d{7}
7, ID 번호:
15 또는 18자리 ID 카드:
^d{15 } |d{18}$
15자리 신분증:
^[1-9]d{7}((0d)|(1[0-2]))(([0|1|2]d) |3 [0-1])d{3}$
18자리 신분증:
^[1-9]d{5}[1-9]d{3}((0d)|(1[0- 2]) )(([0|1|2]d)|3[0-1])d{4}$
8. 짧은 ID 번호(숫자, x로 끝나는 문자):
^([0-9 ]){ 7,18}(x| 법적(문자로 시작, 5-16바이트 허용, 영숫자 밑줄 허용):
^[a-zA-Z][a-zA-Z0-9_]{4,15 }$
10, 비밀번호(문자로 시작, 길이 6~18, 문자, 숫자, 밑줄만 포함할 수 있음):
^[a-zA-Z]w{5,17}$
11, 강력한 비밀번호( 대문자, 소문자 및 숫자 조합을 포함해야 함), 특수 문자는 사용할 수 없으며 길이는 8-10):
^(?=.*d)(?=.*[a-z])(?=. *[A-Z]).{8,10}$
12. 날짜 형식:
^d{4}-d{1,2}-d{1,2}
13. 12개월(01~09) 및 1~12):
^(0?[ 1-9]|1[0-2])$
14, 매월 31일(01~09 및 1~31):
^((0?[ 1-9])|((1|2) [0-9])|30|31)$
15. 화폐 입력 형식:
16. 1. 허용되는 화폐 표시 형식에는 "10000.00 " 및 "10,000.00", "센트"가 없는 "10000" 및 "10,000":
^[1-9][0-9]*$
17. 2. 이는 0으로 시작하지 않는 모든 숫자를 의미합니다. 하지만 이는 문자 "0"이 전달되지 않는다는 의미이기도 하므로 다음 형식을 사용합니다:
^(0|[1-9][0-9]*)$
18, 3. 0 또는 숫자 0으로 시작하지 않습니다. 시작 부분에 숫자를 허용할 수도 있습니다. 음수 기호:
^(0|-?[1-9][0-9]*)$
19, 4. 이는 0 또는 숫자를 나타냅니다. 음수일 수 있고 0으로 시작하지 않습니다. 사용자가 0으로 시작하도록 하세요. 음수 기호도 제거해 보겠습니다. 왜냐하면 돈은 음수가 될 수 없기 때문입니다. 다음에 추가해야 할 것은 가능한 소수 부분입니다:
^[0 -9]+(.[0-9]+)?$
20, 5. 주의할 점은 소수점 이하 1자리 이상 있어야 하므로 "10."은 넘어가지 않고 "10"입니다. 및 "10.2"가 전달됩니다:
^[0-9]+( .[0-9]{2})?$
21. 이런 식으로 소수점 이하 두 자리가 있어야 함을 규정합니다. . 너무 가혹하다고 생각되면 다음과 같이 할 수 있습니다:
^[0-9]+(.[0- 9]{1,2})?$
22. 이렇게 하면 사용자는 하나만 쓸 수 있습니다. 이제 숫자의 쉼표를 고려해야 합니다.
^[0-9]{1,3 }(,[0-9]{3})*(.[0-9]{ 1,2})?$
23, 8.1~3자리 숫자, 그 뒤에 쉼표 + 3자리 숫자가 옵니다. 쉼표는 선택 사항일 수 있으며 필수는 아닙니다.
^([0-9]+|[0-9]{1, 3}(,[0-9]{3})*)(.[0-9]{1,2 })?$
24. 참고: 이것이 최종 결과라는 점을 잊지 마세요. 빈 문자열이 허용된다고 생각되면 "*"로 바꾸십시오(이상한 이유는 무엇입니까?) 마지막으로 기능 중에 백슬래시 제거를 사용하는 것을 잊지 마십시오. 일반적인 오류는 여기에 있습니다
25, xml 파일:
^([a -zA-Z]+-?)+[a-zA-Z0-9]+\.[x | 내에서 문자열 길이를 계산하는 데 사용할 수 있습니다(2바이트 문자 길이는 2로 계산됨). , ASCII 문자의 길이는 1로 계산됩니다.)
28. 빈 줄에 대한 정규식: ns*r(빈 줄을 삭제하는 데 사용할 수 있음)
29. HTML 태그에 대한 정규식:
<(S*? )[^>]*>.*?|<.*? /> (인터넷에 떠돌고 있는 버전은 너무 안좋습니다. 위의 버전은 부분적으로만 작동할 수 있으며 여전히 가능합니다. 복잡한 중첩 태그에 대해서는 아무 작업도 수행하지 않음)
30. 선행 및 후행 공백 문자의 정규 표현식: ^s*|s*$ 또는 (^s*)|(s*$) (다음 위치에서 줄을 삭제하는 데 사용할 수 있음) 첫 번째 줄 끝(공백, 탭, 폼 피드 등 포함), 매우 유용한 표현)
31, Tencent QQ 번호: [1-9][0-9]{4,} (Tencent QQ 번호는 다음에서 시작됩니다. 10000)
32, 중국 우편번호: [1-9]d{5}(?!d) (중국 우편번호는 6자리)
33, IP 주소: d+.d+.d+.d+ ( IP 주소를 추출할 때 유용합니다. )

관련 권장사항:


Php


js의 정규식 생년월일 정규식 확인

PHP의 정규식 캡처 그룹 및 비캡처 그룹

위 내용은 PHP 정규식 이론의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿