The definition of PHP regular expression:
A grammatical rule used to describe character arrangement and matching patterns. It is mainly used for pattern segmentation, matching, search and replacement operations of strings.
PHP regular expression is mainly used in the mode segmentation, matching, finding and replacement operation of the string. Using regular expressions may not be efficient in some simple environments, so how to better use PHP regular expressions needs to be considered comprehensively.
Regular functions in PHP:
There are two sets of regular functions in PHP, both of which have similar functions, namely:
One set is provided by the PCRE (Perl Compatible Regular Expression) library. Functions named with the prefix "preg_";
A set of functions provided by POSIX (Portable Operating System Interface of Unix) extensions. Use functions named with the prefix "ereg_"; (POSIX regular function library is no longer recommended for use since PHP 5.3, and will be removed from PHP 6)
Due to the upcoming history of POSIX regular function Stage, and the forms of PCRE and perl are similar, which is more convenient for us to switch between perl and php, so here we focus on the use of PCRE regularity.
PCRE regular expression
PCRE stands for Perl Compatible Regular Expression, which means Perl compatible regular expression.
In PCRE, the pattern expression (i.e. regular expression) is usually enclosed between two backslashes "/", such as "/apple/".
Several important concepts in regular expressions are: metacharacters, escapes, pattern units (repetitions), antonyms, references and assertions. These concepts can be easily understood and mastered in the article [1].
Commonly used meta-characters:
Meta-character Description
A Matches the atom at the beginning of the string
Matches the string Atoms at the end
Match word boundaries / is/ Match strings whose head is is /is / Match strings whose tail is is / is / Delimited
B Matches any character except word boundaries /Bis/ Matches "is" in the word "This"
d Matches a number; equivalent to [0-9]
D Matches except Any character other than numbers; equivalent to [^0-9]
w Matches an English letter, number or underscore; equivalent to [0-9a-zA-Z_]
W Matches any character except English letters, numbers and underscores; equivalent to [^0-9a-zA-Z_]
s Matches a blank character; equivalent to [f v]
S Matches any character except whitespace characters; equivalent to [^f v]
f Matches a newline character, which is equivalent to x0c or cL
Matches a newline character; Equivalent Matches a carriage return character in x0a or cJ
Equivalent to matching a tab character in x0d or cM
Equivalent to matching a vertical tab character in x09 or cl
v Symbol; equivalent to x0b or ck
oNN Matches an octal number
xNN Matches a hexadecimal number
cC Matches a control character
Pattern Modifiers:
Pattern modifiers are especially used in ignoring case and matching multiple lines. Mastering this modifier can often solve many problems we encounter.
i - Can match both uppercase and lowercase letters
M - Treat the string as multiple lines
S - Treat the string as a single line, and treat newlines as ordinary characters , so that "." matches any character
X - Blanks in the pattern are ignored
U - Matches the nearest string
e - Replaces the replaced string as Expressions use the
format: /apple/i matches "apple" or "Apple", etc., ignoring case. /i
PCRE pattern unit:
//1 Extract the first attribute
/^d{2} ([W])d{2}1d {4}$ matches strings such as "12-31-2006", "09/27/1996", and "86 01 4321". But the above regular expression does not match the format of "12/34-5678". This is because the result "/" of pattern "[W]" has already been stored. When the next position "1" refers to , the matching pattern is also the character "/".
Use the non-storage pattern unit "(?:)" when there is no need to store the matching results
For example /(?:a|b|c)(D|E|F)1g/ will match "aEEg".In some regular expressions, it is necessary to use non-storage mode units. Otherwise, the order of subsequent references needs to be changed. The above example can also be written as /(a|b|c) (C|E|F)2g/.
PCRE regular expression function:
The following is the quoted content:
1. preg_match() and preg_match_all()
2. preg_quote()
3. preg_split ()
4. preg_grep()
5. The specific use of preg_replace()
function can be found through the PHP manual. Here are some regular expressions we have accumulated:
Match action attribute
|
Use callback function in regular expression
The following is the quoted content:
|