Home >Backend Development >PHP Tutorial >All expression symbols in regular expressions (summary)

All expression symbols in regular expressions (summary)

PHP中文网
PHP中文网Original
2017-07-29 14:39:5420616browse

This chapter introduces all the expression symbols in regular expressions (summary), which has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

1. Expression of check digits

Number: ^[0-9]*$

n-digit number :^\d{n}$

A number with at least n digits: ^\d{n,}$

A number with m-n digits: ^\d{m,n}$

Numbers starting with zero and non-zero: ^(0|[1-9][0-9]*)$

Numbers starting with non-zero and with up to two decimal places :^([1-9][0-9]*) (.[0-9]{1,2})?$

Positive or negative number with 1-2 decimal places: ^ (\-)?\d (\.\d{1,2})?$

Positive numbers, negative numbers, and decimals: ^(\-|\ )?\d (\.\d )?$

Positive real number with two decimal places: ^[0-9] (.[0-9]{2})?$

With 1~3 decimal places Positive real numbers: ^[0-9] (.[0-9]{1,3})?$

Positive non-zero integers: ^[1-9]\d*$ or ^ ([1-9][0-9]*){1,3}$ or ^\ ?[1-9][0-9]*$

Non-zero negative integer: ^\ -[1-9][]0-9"*$ or ^-[1-9]\d*$

Non-negative integer: ^\d $ or ^[1-9]\d *|0$

Non-positive integer: ^-[1-9]\d*|0$ or ^((-\d )|(0 ))$

Not Negative floating point number: ^\d (\.\d )?$ or ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\. 0 |0$

Non-positive floating point number: ^((-\d (\.\d )?)|(0 (\.0 )?))$ or ^(-([1- 9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0 |0$

Positive floating point number: ^[1 -9]\d*\.\d*|0\.\d*[1-9]\d*$ or ^(([0-9] \.[0-9]*[1-9][ 0-9]*)|([0-9]*[1-9][0-9]*\.[0-9] )|([0-9]*[1-9][0-9 ]*))$

Negative floating point number: ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ or ^(-(([0-9] \.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\ .[0-9] )|([0-9]*[1-9][0-9]*)))$

Floating point number: ^(-?\d )(\. \d )?$ or ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0 |0)$ p>

2. Expression of check characters

Chinese characters: ^[\u4e00-\u9fa5]{0,}$

English and numbers: ^[A-Za-z0-9] $ or ^[A-Za-z0-9]{4,40}$

All characters of length 3-20: ^.{ 3,20}$

A string of 26 English letters: ^[A-Za-z] $

A string of 26 uppercase English letters: ^ [A-Z] $

A string consisting of 26 lowercase English letters: ^[a-z] $

A string consisting of numbers and 26 English letters: ^[A- Za-z0-9] $

A string consisting of numbers, 26 English letters or underscores: ^\w $ or ^\w{3,20}$

Chinese , English, numbers including underscores: ^[\u4E00-\u9FA5A-Za-z0-9_] $

Chinese, English, numbers but excluding underscores and other symbols: ^[\u4E00-\u9FA5A-Za -z0-9] $ or ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$

You can enter characters such as ^%&',;=?$\" :[^%&',;=?$\x22]

It is forbidden to enter characters containing ~: [^~\x22]

3. Special requirement expressions

Email address: ^\w ([- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w ) *$

Domain name: [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a -zA-Z0-9]{0,62}) /.?

InternetURL: [a-zA-z] ://[^\s]* or ^http://([\ w-] \.) [\w-] (/[\w-./?%&=]*)?$

Mobile phone number: ^(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 }$

Phone numbers ("XXX-XXXXXXX", "XXXX-XXXXXXXX", "XXX-XXXXXXX", "XXX-XXXXXXXX", "XXXXXXX" and "XXXXXXXX): ^(\(\d {3,4}-)|\d{3.4}-)?\d{7,8}$

Domestic phone number (0511-4405222, 021-87888822): d{3}-\d{8}|\d{4}-\d{7}

ID number (15 digits, 18 digits): ^\d{15}|\d{18}$

Short ID number (numbers, ending with letter x): ^([0-9]){7, 18}(x|X)?$ or ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$

Account number Is it legal (starts with a letter, allows 5-16 bytes, allows alphanumeric underscores): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$

Password (Starts with a letter, has a length between 6 and 18, and can only contain letters, numbers and underscores): ^[a-zA-Z]\w{5,17}$

Strong password (required Contains a combination of uppercase and lowercase letters and numbers, special characters cannot be used, and the length is between 8-10): ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]) .{8,10}$

Date format: ^\d{4}-\d{1,2}-\d{1,2}

12 of the year Month (01~09 and 1~12): ^(0?[1-9]|1[0-2])$

31 days of a month (01~09 and 1~31 ): ^((0?[1-9])|((1|2)[0-9])|30|31)$

Input format of money:
1. There are four acceptable expressions of money: "10000.00" and "10,000.00", and "10000" and "10,000" without "cents": ^[1-9][0-9]*$
2. This means any number that does not start with 0, but it also means that a character "0" does not pass, so we use the following form: ^(0|[1-9][0-9]*) $
3. A 0 or a number that does not start with 0. We can also allow a negative sign at the beginning: ^(0|-?[1-9][0-9]*)$
4. This means a 0 or a number that may be negative and does not start with 0. Let the user start with 0. Also remove the negative sign, because money cannot be negative. What we want to add below is the explanation Possible decimal parts: ^[0-9] (.[0-9] )?$
5. It must be noted that there should be at least 1 digit after the decimal point, so "10." is not passed, but "10" and "10.2" are passed: ^[0-9] (.[0-9 ]{2})?$
6. In this way, we stipulate that there must be two decimal places after the decimal point. If you think it is too harsh, you can do this: ^[0-9] (.[0-9]{1,2})?$
7. This allows the user to write only one decimal place. Next we should consider the comma in the number. We can do this: ^[0-9]{1,3}(,[0-9]{3})*( .[0-9]{1,2})?$
8. 1 to 3 numbers, followed by any number of commas and 3 numbers. The commas become optional, not required: ^([0-9] |[0-9]{1,3}(,[0-9 ]{3})*)(.[0-9]{1,2})?$
Note: This is the final result. Don't forget to replace " " with "*" if you think the empty string is acceptable (strange, why?) Finally, don't forget to remove the backslash when using the function. , General errors are here

xml file: ^([a-zA-Z] -?) [a-zA-Z0-9] \\.[x|X][m|M ][l|L]$

Regular expression for Chinese characters: [\u4e00-\u9fa5]

Double-byte characters: [^\x00-\xff] (including Including Chinese characters, it can be used to calculate the length of the string (the length of a double-byte character counts as 2, and the length of an ASCII character counts as 1))

Regular expression for blank lines: \n\s*\r ( Can be used to delete blank lines)

Regular expression for leading and trailing blank characters: ^\s*|\s*$ or (^\s*)|(\s*$) (can be used to delete blank characters at the beginning and end of the line (including spaces, Tab characters, form feeds, etc.), very useful expressions)

Tencent QQ number: [1-9][0-9]{4,} (Tencent QQ number starts from 10000)

China postal code: [1-9]\d{5}(?!\d) (China postal code is 6 digits)

IP address:
IP address: d \.\d \.\d \.\d (useful when extracting IP address)
IP address: ((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25 [0-5]|2[0-4]\\d|[01]?\\d?\\d))

The above are the most commonly used regular expressions. Everything you need is here. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn