A collection of commonly used regular expressions in PHP:
Regular expressions that match Chinese characters: [u4e00-u9fa5]
Comment: Matching Chinese characters is really a headache. With this expression, it is easy to handle.
Matches double-byte characters (including Chinese characters): [ ^x00-xff]
Comment: Can be used to calculate the length of a string (the length of a double-byte character counts as 2, and the ASCII character counts as 1)
Regular expression to match blank lines: ns*r
Comment: Can be used to delete blank lines
Regular expression matching HTML tags: <(S*?)[^>]*>.*?< ;/1>|<.*? />
Comment: The version circulating on the Internet is too bad. The above one can only match part of it, and it is still powerless for complex nested tags
Regular expression to match leading and trailing blank characters: ^s*|s*$
Comment: Can be used to delete blank characters at the beginning and end of a line (including spaces, tabs, form feeds, etc.), Very useful expression
Regular expression for matching email addresses: w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
Comment: Very useful for form validation
Regular expression to match URL: [a-zA-z]+://[^s]*
Comment: The version circulating on the Internet has very limited functions. The above one can basically meet the needs
Whether the matching account is legal (starting with a letter, 5-16 bytes are allowed, alphanumeric underscores are allowed): ^[a-zA-Z][ a-zA-Z0-9_]{4,15}$
Comment: Very practical for form verification
Matching domestic phone numbers: d{3}-d{8}|d{ 4}-d{7}
Comment: Matching format such as 0511-4405222 or 021-87888822
Matching Tencent QQ number: [1-9][0-9]{4,}
Comment: Tencent QQ account starts from 10000
Matching Chinese postal code: [1-9]d{5}(?!d)
Comment: Chinese postal code It is a 6-digit number
Matching ID card: d{15}|d{18}
Comment: China’s ID card is 15 or 18 digits
Matching IP address :d+.d+.d+.d+
Comment: Useful when extracting IP address
Match specific numbers:
^[1-9]d*$ // Match positive Integer
^-[1-9]d*$ [1-9]d*|0$ // Match non-negative integers (positive integers + 0)
^-[1-9]d*|0$ // Match non-positive integers (negative integers + 0)
^[1-9]d*.d*|0.d*[1-9]d*$ // Match positive floating point numbers
^-([1- 9]d*.d*|0.d*[1-9]d*)$ // Match negative floating point number
^-?([1-9]d*.d*|0. d*[1-9]d*|0?.0+|0)$ // Match floating point number
^[1-9]d*.d*|0.d*[1-9 ]d*|0?.0+|0$ // Match non-negative floating point numbers (positive floating point numbers + 0)
^(-([1-9]d*.d*|0.d *[1-9]d*))|0?.0+|0$ // Match non-positive floating point numbers (negative floating point numbers + 0)
Comments: Useful when processing large amounts of data, specific applications Note the correction
Match specific string:
^[A-Za-z]+$ // Match a string consisting of 26 English letters
^[A-Z ]+$ // Matches a string consisting of 26 uppercase English letters
^[a-z]+$ // Matches a string consisting of 26 lowercase English letters
^ [A-Za-z0-9]+$ // Matches a string consisting of numbers and 26 English letters
^w+$ // Matches a string consisting of numbers, 26 English letters or underscores
www.bkjia.com