Home >Backend Development >PHP Tutorial >Comparison of commonly used string regular replacement and split functions in PHP_PHP Tutorial
This article will introduce to you the comparison of commonly used string regular replacement and splitting functions in PHP. In PHP, string regular replacements include: str_replace, str_ireplace, substr_replace, preg_replace, preg_match, preg_match_all, preg_quote, preg_split, ereg_replace, eregi_replace, preg_replace, str_split Function, let me introduce it to you below.
The relationship between regular functions is ambiguous, so we put them together for comparison for easy reference.
名称 | 支持正则 | 特点 | 备注 |
str_replace | X | 字符串替换函数,大小写敏感 | |
str_ireplace | X | 字符串替换函数,大小写不敏感,支持数组式批量替换 | 感谢网友franci,提醒添加 |
substr_replace | X | 部分替换字符串函数,可以指定位置index | |
preg_replace | Y | 指定匹配模式进行替换,支持子串引用 | 优先使用 |
ereg_replace | Y | 指定匹配模式进行替换,大小写敏感,支持子串引用 | |
eregi_replace | Y | 指定匹配模式进行替换,大小写不敏感,支持子串引用 | |
ereg | Y | 指定模式全文匹配,可以用来匹配判断,或返回匹配数组 | |
preg_match | Y | 指定模式匹配一次退出,可以用来是否匹配判断,或使用返回的匹配数组 | 优先使用 |
preg_match_all | Y | 指定模式全文匹配,一般用来使用返回的匹配数组 | 优先使用 |
preg_split | Y | 指定匹配模式下正则剖分,如果能用最好还是使用explode或str_split | |
str_split | X | 指定长度剖分字符串,默认单个字符剖分成数组 | |
explode | X | 可以指定单个或多个字符剖分字符串,成功则返回数组,例如12345按照34剖分则返回12和5 | |
preg_quote | - | 转义正则表达式字符,意思就是为特殊字符加上反斜线,正则表达式的特殊字符包括:. + * ? [ ^ ] $ ( ) { } = ! < > | : - | |
Additional explanation:
1. There are two sets of regular expression function libraries in PHP with very similar functions:
One set is provided by the POSIX (Portable Operating System Interface of Unix) library. The functions are named with the ereg_ prefix. The POSIX regular function library is no longer recommended for use .
One set is provided by the PCRE (Perl Compatible Regular Expression) library. The functions are named with the preg_ prefix. It is recommended that everyone use them first. In PCRE, the pattern expression (i.e. regular expression) is usually enclosed between two backslashes "/", such as "/^w+$/" style.
2. PHP regular expression function: match extraction, match replacement.