标签分类
技术文章
当前位置:主页 > 计算机编程 > php > PHP常用正则表达式

PHP常用正则表达式总结

  • 发布时间:
  • 作者:码农之家原创
  • 点击:60

PHP常用正则表达式

这篇文章主要知识点是关于php,正则表达式,PHP常用正则表达式,PHP实现正则匹配所有括号中的内容 的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

PHP5权威编程
PHP5权威编程超清扫描版
  • 类型:PHP5大小:25.3 MB格式:PDF出版:电子工业出版社作者:古曼兹
立即下载

更多相关的学习资源可以参阅 程序设计电子书PHP电子书、等栏目。

PHP常用正则表达式,具体内容如下所述:

$regex = '[\u4e00-\u9fa5]'; //匹配中文字符的正则表达式
$regex = '^[\u4E00-\u9FA5A-Za-z0-9]+$'; or $regex = '^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$'; //中文、英文、数字但不包括下划线等符号
$regex = '^[a-zA-Z][a-zA-Z0-9_]{4,15}$'; //帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线)
$regex = '[^\x00-\xff]'; //匹配双字节字符(包括汉字在内)
$regex = '\n[\s| ]*\r'; //匹配空行的正则表达式
$regex = '/<(.*)>.*<\/\1>|<(.*) \/>/'; //匹配HTML标记的正则表达式
$regex = '(^\s*)|(\s*$)'; //匹配首尾空格的正则表达式
$regex = '/(\d+)\.(\d+)\.(\d+)\.(\d+)/g'; //匹配IP地址的正则表达式
$regex = '\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*'; //匹配Email地址的正则表达式
$regex = '^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$'; //手机号
$regex = '^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$'; //18位身份证号
$data = "***********";
if (preg_match($regex,$data)) {
  echo "验证成功";
} else {
  echo "你输入的是啥玩意?";
}

ps:下面给大家分享几种常用正则表达式PHP版

字符串过滤所有非英语字符和特殊符号仅保留英语字符,数字和空格:

$string = "abcd23uo*&* (.字符串过";
preg_match_all("/[\w\s]/i", $string, $matches);
print_r(implode('', $matches[0]));

字符串过滤所有非中文字符:

$string = "abcd23uo*&* (.字符串过";
preg_match_all("/([\x{4e00}-\x{9fa5}])/u", $string, $matches);
print_r(implode('', $matches[0]));

总结

以上所述是小编给大家介绍的PHP常用正则表达式精选,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!

PHP实现正则匹配所有括号中的内容

正则表达式:(?<=【)[^】]+

注:以匹配中文括号中内容为例,如果匹配非中文括号,则需要在括号前增加转义符

PHP实现示例:

<?php
    $strSubject = "abc【111】abc【222】abc【333】abc";
    $strPattern = "/(?<=【)[^】]+/";
    $arrMatches = [];
    preg_match_all($strPattern, $strSubject, $arrMatches);
    var_dump($arrMatches);

执行结果:

~ » php mytest/test_preg.php                                                                                 iwaimai@bogon
array(1) {
 [0]=>
 array(3) {
  [0]=>
  string(3) "111"
  [1]=>
  string(3) "222"
  [2]=>
  string(3) "333"
 }
}

解析:

1、(?<=【)

第一个表达式是一个『非获取匹配』,即匹配括号,但并不获取括号;

PHP实现正则匹配所有括号中的内容

2、[^】]+

第二个表达式中[]匹配单个字符,^】代表除了】的字符,+是限定符代表匹配前面子表达式一次或多次,即匹配除了】的连续多个字符;

组合起来即实现了预期效果~

总结

以上所述是小编给大家介绍的PHP实现正则匹配所有括号中的内容,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!

以上就是本次给大家分享的全部知识点内容总结,大家还可以在下方相关文章里找到解决axios.interceptors.respon、 儿童python编程入门书籍推、 spring+springmvc+mybatis整合注、 等php文章进一步学习,感谢大家的阅读和支持。

上一篇:Laravel自定义command命令代码详解

下一篇:ThinkPHP3.2框架操作Redis的方法实例

展开 +

收起 -

学习笔记
网友NO.825097

php表单习惯用的正则表达式

php表单常用正则表达式,代码如下所示: function is_email($str){ //检验email return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str); } function is_url($str){ //检验网址 return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-lt;\"]) *$/", $str); } function is_qq($str){ //检验qq return preg_match("/^[1-9]\d{4,8}$/", $str); } function is_zip($str){ //检验邮编 return preg_match("/^[1-9]\d{5}$/", $str); } function is_idcard($str){ //检验身份证 return preg_match("/^\d{15}(\d{2}[A-Za-z0-9])?$/", $str); } function is_chinese($str){ 检验是否是中文 return ereg("^[".chr(0xa1)."-".chr(0xff)."]+$",$str); } function is_english($str){ //检验是否是英文 return preg_match("/^[A-Za-z]+$/", $str); } function is_mobile($str){ //检验是否是手机 return preg_match("/^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/", $str); } function is_phone($str){ //建云那是否是电话 return preg_match("/^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/", $str); } function is_safe($str){ return (preg_match("/^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^lt;\?\\\/\'\"]*)|. {0,5})$|\s/", $str) != 0); } } PS:下面再给大家分享一段代码 ?php/*** @description: 正则表达式匹配*/class Regex {/*** @手机号*/public static function Phone($subject) {$pattern='/^(0|86|17951)?(13[0-9]|15[012356789]|1[78][0-9]|14[57])[0-9]{8}$/';return Regex::PublicMethod($pattern, $subject);}/*** @数字*/public static function Number($subject) {$pa……

网友NO.359524

PHP用正则匹配form表单中所有元素的类型和属性值实例代码

前言 最近工作中遇到一个需求,需要在正则匹配页面中,所有可能存在的 form 表单的元素,可能有 input,action,select,textarea等等所有可能的元素,本文给出一个代码示例。感兴趣的朋友们可以参考学习。 实例代码如下 假设页面 1.html 的网页源代码是: !DOCTYPE htmlhtml head meta charset="utf-8" / title一个含有 form 表单的登录注册页面/title style type="text/css" *{padding:0;margin:0;font-size:12px;} .tbl{margin:20px auto;border:1px solid #AACCEE;padding:30px 30px;border-radius:4px;} .tbl td{line-height:30px;vertical-align:top;} textarea{resize:none;height:60px;} /style /head body form action="register.php" method="post" input type="hidden" name="cookie" value="SJKjki80KJ8jkl2" / table cellpadding="0" cellspacing="0" class="tbl" tr th colspan="2"注册/th /tr tr td昵称:/td tdinput type="text" name = 'name' required="" //td /tr tr td密码:/td tdinput name="password" type="password" required="required" //td /tr tr td年龄:/td tdinput name="age" value="22" required="required" /td /tr tr td性别:/td td input type="radio" name="sex" value="1" / 男 input type="radio" name="sex" value="0" / 女 /td /tr tr td地区:/td td select name="area" option value="jiangsu"江苏/option option value="shandong"山东/option option value="fujian"福建/option option value="beijing"北京/option /select /td /tr tr td城市:/td td select name="city" option value="qingdao"青岛/option option ……

网友NO.843692

php正则去除网页中所有的html,js,css,注释的实现方法

如下所示: $search = array ("'script[^]*?.*?/script'si", // 去掉 javascript "'style[^]*?.*?/style'si", // 去掉 css "'[/!]*?[^]*?'si", // 去掉 HTML 标记 "'!--[/!]*?[^]*?'si", // 去掉 注释 标记 "'([rn])[s]+'", // 去掉空白字符 "''i", // 替换 HTML 实体 "''i", "''i", "''i", "''i", "''i", "''i", "''i", "''i", "''e"); // 作为 PHP 代码运行 $replace = array ("", "", "", "", "\1", "\"", "lt;", "", " ", chr(161), chr(162), chr(163), chr(169), "chr(\1)");//$document为需要处理字符串,如果来源为文件可以$document = file_get_contents($filename);$out = preg_replace($search, $replace, $document); 也可以使用php的内置函数strip_tags()清除html,js,注释等标记 以上就是小编为大家带来的php正则去除网页中所有的html,js,css,注释的实现方法全部内容了,希望大家多多支持码农之家~ ……

<
1
>

Copyright 2018-2019 xz577.com 码农之家

版权责任说明