Home  >  Article  >  Backend Development  >  Learn regular expressions with examples_PHP tutorial

Learn regular expressions with examples_PHP tutorial

WBOY
WBOYOriginal
2016-07-20 10:59:59805browse

First, let’s take a look at two special characters: ‘^’ and ‘$’. They are used to match the beginning and end of a string respectively. Here are examples:

"^The": Matches strings starting with "The";

"of despair$": matches strings ending with "of despair";

"^abc$": Matches strings starting with abc and ending with abc. In fact, only abc matches it;

"notice": Matches strings containing notice;

You can see that if you don't use the two characters we mentioned (the last example), it means that the pattern (regular expression) can appear anywhere in the string being checked, and you don't lock it to both sides.

There are also several characters '*', ' ', and '?', which are used to represent the number or order of occurrences of a character. They respectively represent: "zero or more", "one or more", and "zero or one." Here are some examples:

"ab*": Matches a string consisting of string a and 0 or more b ("a", "ab", "abbb", etc.);

"ab ": Same as above, but with at least one b ("ab", "abbb", etc.);

"ab?": matches 0 or one b;

"a?b $": Matches a string ending with one or 0 a plus one or more b.

You can also limit the number of characters within curly braces, such as

"ab{2}": matches an a followed by two b (not one less) ("abb");

"ab{2,}": update at least two b("abb", "abbbb", etc.);

"ab{3,5}": 2-5 b("abbb", "abbbb", or "abbbbb").

You must also note that you must always specify (i.e., "{0,2}", not "{,2}"). Likewise, you must note that '*', ' ', and '?' respectively The following three range annotations are the same, "{0,}", "{1,}", and "{0,1}".

Now put a certain number of characters into parentheses, for example:

"a(bc)*": matches a followed by 0 or one "bc";

"a(bc){1,5}": one to 5 "bc."

There is also a character '│', which is equivalent to the OR operation:

"hi│hello": matches strings containing "hi" or "hello";

"(b│cd)ef": matches strings containing "bef" or "cdef";

"(a│B)*c": Matches a string containing - multiple (including 0) a or b, followed by a c string;

A dot ('.') can represent all single characters:

"a.[0-9]": an a followed by a character followed by a number (strings containing such a string will be matched, this bracket will be omitted in the future)

"^.{3}$": ends with three characters. The content enclosed in square brackets only matches a single character

"[ab]": matches a single a or b (same as "a│b");

"[a-d]": matches a single character from 'a' to 'd' (same effect as "a│b│c│d" and "[abcd]");

"^[a-zA-Z]": Matches strings starting with letters

"[0-9]%": Matches strings containing x%

",[a-zA-Z0-9]$": Matches a string ending with a comma followed by a number or letter

You can also list the characters you don't want in brackets. You just need to use '^' as the beginning of the bracket (i.e., "%[^a-zA-Z]%" matches two percent signs. There is a non-letter string inside).

In order to be able to explain, but "^.[$()│* ?{" is a character with special meaning, you must add '' in front of these characters, and in php3 you should avoid using it at the beginning of the pattern , for example, the regular expression "($│?[0-9] " should be called ereg("($│?[0-9] ", $str) (I don’t know if it is the same in php4)

Don’t forget that characters inside square brackets are exceptions to this rule


www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/445553.htmlTechArticleFirst, let’s take a look at two extraordinary characters: ^ and $. They are used to match strings respectively. The beginning and end are explained with examples: ^The: Matches strings starting with The;...
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