正则表达式 - PHP正则查找字符串
阿神
阿神 2017-04-11 09:17:03
[PHP讨论组]
多谢。

//查找函有“2”的字符串
//这些数据其实是数组,以逗号隔开
//注意25不匹配,只匹配2
$arr = array(
    '2,4',
    '1,56,2,4',
    '3,2',
    '3,5,46',
    '1,8,3,25',
);
$reg = "\b2,?\b";
foreach ($arr as &$value) {
    if (preg_match($reg, $value)) {
        echo "1";
    } else {
        echo "0";
    }
}

其实我是想查找MYSQL中的数据,多谢。

阿神
阿神

闭关修行中......

全部回复(4)
伊谢尔伦

mysql的话可以用find_in_setinstr

阿神

$reg = "\b2,?\b"中的正则表达式改为$reg = "#2#"就可以啦

ringa_lee
$arr = array(
    '2,4',
    '1,56,2,4',
    '3,2',
    '3,5,46',
    '1,8,3,25',
);
$v = 2;
$res=array_filter($arr,function($i) use($v){
    return in_array($v,explode(',',$i));
});
print_r($res);

Array
(
    [0] => 2,4
    [1] => 1,56,2,4
    [2] => 3,2
)

$reg = "#\b2,?\b#";
foreach ($arr as $value) {
    if (preg_match($reg, $value)) {
        echo $value.'<br>';
    }
}

2,4
1,56,2,4
3,2
大家讲道理

直接贴代码

$arr = array(
    '2,4',
    '1,56,2,4',
    '3,2',
    '3,5,46',
    '1,8,3,25',
);
$reg = "#\b2,?\b#";
foreach ($arr as &$value) {
    if (preg_match($reg, $value)) {
        echo "1";
    } else {
        echo "0";
    }
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号