PHP 正则表达式

一,正则表达式简介

表达式必须用分隔符闭合,比如一个正斜杠(/)。 分隔符可以使任意非字母数字,除反斜杠(\)和空字节之外的非空白 ascii 字符。 如果分隔符 在表达式中使用,需要使用反斜线进行转义。也可以使用 perl 样式的()、 {}、 [] 以及 <> 作为分隔符。 

PCRE 函数
preg_filter — 执行一个正则表达式搜索和替换
preg_grep — 返回匹配模式的数组条目
preg_last_error_msg — Returns the error message of the last PCRE regex execution
preg_last_error — 返回最后一个PCRE正则执行产生的错误代码
preg_match_all — 执行一个全局正则表达式匹配
preg_match — 执行匹配正则表达式
preg_quote — 转义正则表达式字符
preg_replace_callback_array — Perform a regular expression search and replace using callbacks
preg_replace_callback — 执行一个正则表达式搜索并且使用一个回调进行替换
preg_replace — 执行一个正则表达式的搜索和替换
preg_split — 通过一个正则表达式分隔字符串

二,PHP 使用正则表达式查找字符串

preg_match(
    string $pattern,
    string $subject,
    array &$matches = null,
    int $flags = 0,
    int $offset = 0
): int|false

参数
pattern 要搜索的模式,字符串类型。

subject 输入字符串。

matches 如果提供了参数matches,它将被填充为搜索结果。 $matches[0]将包含完整模式匹配到的文本, $matches[1] 将包含第一个捕获子组匹配到的文本,以此类推。

flags 可以被设置为以下标记值的组合:

PREG_OFFSET_CAPTURE
如果传递了这个标记,对于每一个出现的匹配返回时会附加字符串偏移量(相对于目标字符串的字节数)。 注意:这会改变填充到matches参数的数组,使其每个元素成为一个由 第0个元素是匹配到的字符串,第1个元素是该匹配字符串 在目标字符串subject中的偏移量。

preg_match('/(foo)(bar)(baz)/', 'foobarbaz', $matches, PREG_OFFSET_CAPTURE);
print_r($matches);

输出结果:

Array
(
    [0] => Array
        (
            [0] => foobarbaz
            [1] => 0
        )

    [1] => Array
        (
            [0] => foo
            [1] => 0
        )

    [2] => Array
        (
            [0] => bar
            [1] => 3
        )

    [3] => Array
        (
            [0] => baz
            [1] => 6
        )

)

 

 

三,PHP 使用正则表达式替换字符串

 

四,PHP 使用正则表达式分割字符串

收藏
评论
打赏
WordPress 主题开发
WordPress 用户信息
2024-05-17
Woocommerce 开发
Woocommerce 简介
2024-05-25
飞翔的鱼丸
39396 阅读
82 发布
2 收藏
动态
FishV 主题 v1.21.0 发布
LandV 企业主题 v2.8.0 发布
MirageV 主题 v2.6.4 发布
FishV 主题 v1.14 发布
MirageV 主题 v2.5 正式发布
BotV 插件 v1.7.0 发布
LandV 企业主题 v2.6.0 发布
MirageV 主题 v2.6.0 发布
生成中...
真诚赞赏,手留余香
登录
注册
重置密码