美文网首页
常用正则表达式,总有一个你用得到!

常用正则表达式,总有一个你用得到!

作者: gao922699 | 来源:发表于2022-09-14 16:53 被阅读0次

基础教程:
https://www.runoob.com/regexp/regexp-tutorial.html
https://www.w3cschool.cn/zhengzebiaodashi/regexp-tutorial.html

在线校验正则表达式的网站:
https://regexr.com/

  • 手机号
^1[3456789][0-9]{10}$
  • 邮箱格式校验
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
  • QQ号
/^[1-9][0-9]{4,14}$/
  • URL
/^(http:\/\/|https:\/\/)[a-zA-Z0-9\/\=\.\?\&\_\-]+$/
  • 密码强度校验:8位以上数字字母组合,可以包含特殊字符但不强制要求
^(?!\d+$)(?![a-zA-Z]+$)[a-zA-Z\d\x21-\x7e]{8,}$
  • 取出富文本中的图片地址
/**
 * 获取富文本中的图片地址
 * @param $content string 文本
 * @param $limit int|null 个数限制
 * @return array
 */
public static function getImages($content, $limit = null)
{
    $pattern = "/<img.*?src=\"(.+?)\".*?>/i";
    preg_match_all($pattern, $content, $matches);
    if ($limit) {
        return array_slice($matches[1], 0, $limit);
    }
    return $matches[1];

}
  • 取出富文本中的文字
/**
 * 获取富文本中的文字
 * @param $content string 文本
 * @param $limit int|null 字数限制
 * @return mixed
 */
public static function getText($content, $limit = null)
{
    $pattern2 = "/<.*?>/i";
    $text = preg_replace($pattern2, '', $content);
    if ($limit) {
        if (mb_strlen($text, 'utf-8') > $limit) {
            return mb_substr($text, 0, $limit, 'utf-8') . '...';
        }
    }
    return $text;
}

相关文章

网友评论

      本文标题:常用正则表达式,总有一个你用得到!

      本文链接:https://www.haomeiwen.com/subject/orvkortx.html