Regular expressions are often used when building websites. Here are some explanations and examples for your reference and modification only:
Matching numbers
"^\d $" //Non-negative integer (positive integer 0)
"^[0-9]*[1-9][0-9] *$" //Positive integer
"^((-\d )|(0 ))$" //Non-positive integer (negative integer 0)
"^-[0- 9]*[1-9][0-9]*$" // Negative integer
"^-?\d $" // Integer
"^\d (\. \d )?$" //Non-negative floating point number (positive floating point number 0)
"^(([0-9] \.[0-9]*[1-9][0-9 ]*)|([0-9]*[1-9][0-9]*\.[0-9] )|([0-9]*[1-9][0-9]*) )$" //Positive floating point number
"^((-\d (\.\d )?)|(0 (\.0 )?))$" //Non-positive floating point number (negative Floating point number 0)
"^(-(([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
"^(-?\d )(\.\d )?$" //Floating point number
Match letters
"^[A-Za-z] $" / /A string consisting of 26 English letters
"^[A-Z] $" //A string consisting of 26 English letters in uppercase letters
"^[a-z] $" / /A string consisting of 26 lowercase English letters
"^[A-Za-z0-9] $" //A string consisting of numbers and 26 English letters
"^\w $" //A string consisting of numbers, 26 English letters or underscores
Matching example
"^[\w-] (\.[\w-] )*@[\w-] (\.[\w-] ) $" //email address
"^[a-zA-z] ://(\w (-\w )* )(\.(\w (-\w )*))*(\?\S*)?$" //url
/^(d{2}|d{4} )-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0 |1]))$/ // year-month-day
/^((0([1-9]{1}))|(1[1 |2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // Month/Day/Year
"^([w-.] )@(([[0-9]{1,3}.[0-9]{ 1,3}.[0-9]{1,3}.)|(([w-] .) ))([a-zA-Z]{2,4}|[0-9]{1, 3})(]?)$" //Emil
/^((\ ?[0-9]{2,4}\-[0-9] {3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9] )?$/ / /Phone number
"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1 ,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d {1,2}|1dd|2[0-4]d|25[0-5])$" //IP address
Other matching
Regular expression to match Chinese characters: [\u4e00-\u9fa5]
## Matches double-byte characters (including Chinese characters in (within): [^\x00-\xff]
Regular expression matching empty lines:\n[\s| ]*\r
Regular expression matching HTML tags: /<(.*)>.*<\ 1="">|<(.*)>/
Regular expression matching leading and trailing spaces: (^\s*)|(\s*$)
Matches Email Regular expression for address: \w ([- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w )*
Regular expression matching URL: ^[a-zA-z] ://(\\w (-\\w )*)(\\.(\\w (-\\ w )*))*(\\?\\S*)?$
Is the matching account legal (starting with a letter, 5-16 bytes allowed, alphanumeric allowed Underline): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
. Matches any single character except "\n". To match any character including ‘\n’, use a pattern like ‘[.\n]’.
(pattern) Match pattern and get this match.
(?:pattern) matches pattern but does not obtain the matching result, which means that this is a non-acquisition match and is not stored for later use.
(?=pattern) Forward lookup, match the search string at the beginning of any string matching pattern. This is a non-fetch match, that is, the match does not need to be fetched for later use.
(?!pattern) Negative lookup, opposite to (?=pattern)
x|y matches x or y.
[xyz] character set.
[^xyz] Negative character set.
[a-z] Character range, matches any character within the specified range.
[^a-z] Negative character range, matches any character that is not within the specified range.
\b matches a word boundary, which refers to the position between a word and a space.
\B Matches non-word boundaries.
\cx matches the control character specified by x.
\d matches a numeric character. Equivalent to [0-9].
\D matches a non-numeric character. Equivalent to [^0-9].
\f matches a form feed character. Equivalent to \x0c and \cL.
\n matches a newline character. Equivalent to \x0a and \cJ.
\r matches a carriage return character. Equivalent to \x0d and \cM.
\s matches any whitespace character, including spaces, tabs, form feeds, etc. Equivalent to [ \f\n\r\t\v].
\S matches any non-whitespace character. Equivalent to [^ \f\n\r\t\v].
\t matches a tab character. Equivalent to \x09 and \cI.
\v matches a vertical tab character. Equivalent to \x0b and \cK.
\w Matches any word character including an underscore. Equivalent to '[A-Za-z0-9_]'.
\W matches any non-word character. Equivalent to '[^A-Za-z0-9_]'.
\xn matches n, where n is the hexadecimal escape value. The hexadecimal escape value must be exactly two digits long.
\num matches num, where num is a positive integer. A reference to the match obtained.
\n Identifies an octal escape value or a backreference. If \n is preceded by at least n fetched subexpressions, n is a backreference. Otherwise, if n is an octal number (0-7), then n is an octal escape value.
\nm Identifies an octal escape value or a backreference. If \nm is preceded by at least nm fetched subexpressions, nm is a backreference. If \nm is preceded by at least n gets, then n is a backreference followed by literal m. If neither of the previous conditions is true, then \nm will match the octal escape value nm if n and m are both octal digits (0-7).
\nml If n is an octal digit (0-3), and m and l are both octal digits (0-7), then matches the octal escape value nml.
\un matches n, where n is a Unicode character represented by four hexadecimal digits.
Regular expression matching Chinese characters: [u4e00-u9fa5]
Matching double-byte characters (including Chinese characters): [^x00-xff]
Regular expression matching empty lines: n[s| ]*r
Regular expression matching HTML tags: /<(.*)>. *|<(.*)>/
Regular expression matching leading and trailing spaces: (^s*)|(s*$)
Regular expression matching email addresses: w ([- .]w )*@w ([-.]w )*.w ([-.]w )*
Regular expression matching URL: http://([w-] .) [w-] (/[w- ./?%&=]*)?
Use regular expressions to limit the input content of the text box in the web form:
Use regular expressions to limit only Can input Chinese: onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/ [^u4E00-u9FA5]/g,''))"
Use regular expressions to limit the input of only full-width characters: onkeyup="value=value.replace(/ [^uFF00-uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
Use regular expressions to limit input to numbers: onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste="clipboardData .setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"
Use regular expressions Only numbers and English can be entered: onkeyup="value=value.replace(/[W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace( /[^d]/g,''))"
Some commonly used regular examples
1. Non-negative integer: ^\d $
2. Positive integer: ^[0-9]*[1-9][0-9]*$
3. Non-positive integer :^((-\d )|(0 ))$
4, negative integer: ^-[0-9]*[1-9][0- 9]*$
5. Integer: ^-?\d $
6. Non-negative floating point number :^\d (\.\d )?$
7, positive floating point number: ^((0-9) \.[0-9]*[1 -9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9] )|([0-9]*[1-9] [0-9]*))$
8. Non-positive floating point number: ^((-\d \.\d )?)|(0 (\. 0 )?))$
9. Negative floating point number: ^(-((positive floating point number regular expression)))$
10. English string: ^[A-Za-z] $
##11. English uppercase string: ^[A-Z] $
12. English lowercase string: ^[a-z] $
13. English character string: ^[A-Za -z0-9] $
14. Alphanumeric and underlined string: ^\w $
##17, Post Coding: ^[1-9]\d{5}$
18, Chinese: ^[\u0391-\uFFE5] $
19. Phone number: ^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3} \)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$
20. Mobile phone number: ^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$
21. Double-byte characters (including Chinese characters): ^\x00-\xff
22. Match leading and trailing spaces: (^ \s*)|(\s*$) (trim function like vbscript)
23. Match HTML tags: <(.*)>.* <\ 1="">|<(.*)>
##24. Match empty lines: \n[\s| ]*\r
25. Extract network links in the information: (h|H)(r|R)(e|E)(f|F) *= *('|" )?(\w|\\|\/|\.) ('|"| *|>)?
26. Extract the email address in the information: \w ([- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w )*
27. Extract the image link in the information: (s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.) ('| "| *|>)?
28. Extract the IP address in the information: (\d )\.(\d )\.(\d )\. (\d )
29. Extract the Chinese mobile phone number in the information: (86)*0*13\d{9}
30. Extract the Chinese landline phone number in the information: (\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
31. Extract the Chinese phone number in the information (including mobile and landline): (\(\d{3,4}\)|\d{3,4} -|\s)?\d{7,14}
32. Extract the Chinese postal code in the information: [1-9]{1}(\d ) {5}
33. Extract floating point numbers (i.e. decimals) in the information: (-?\d*)\.?\d
34. Extract any number in the information: (-?\d*)(\.\d )?
35. IP: (\d )\.(\d )\.(\d )\.(\d )
36, telephone area code: /^0\d{2, 3}$/
37, Tencent QQ number: ^[1-9]*[1-9][0-9]*$
38. Account number (starting with a letter, allowing 5-16 bytes, allowing alphanumeric underscores): ^[a-zA-Z][a-zA-Z0-9_]{4,15 }$
##39, Chinese, English, numbers and underline: ^[\u4e00-\u9fa5_a-zA-Z0-9] $
Append
Regular expression matching Chinese characters: [\u4e00-\u9fa5]
Matches double-byte characters (including Chinese characters): [^\x00-\xff]
Regular expression that matches blank lines:\n[\ s| ]*\r
Regular expression matching HTML tags: /<(.*)>.*<\ 1="">| <(.*)>/
Regular expression matching leading and trailing spaces: (^\s*)|(\s*$)
Regular expression matching IP address: /(\ d )\.(\d )\.(\d )\.(\d )/g //
Regular expression matching email address:\w ( [- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w )*
Match URL Regular expression for URL: http://(/[\w-] \.) [\w-] (/[\w- ./?%&=]*)?
sql statement: ^(select|drop|delete|create|update|insert).*$
The above is the detailed content of Commonly used regular expressions in php. For more information, please follow other related articles on the PHP Chinese website!