php 正则匹配 常用的 规则(一) 匹配form表单

简介: php 正则匹配 常用的 规则(一) 匹配form表单

 

正则匹配 form 标签      

// 正则匹配 form 标签
  function regular_form_tags($string){ 
    $pattern = '/<form .*>(.*?)<\/form>/siU'; //$pattern = '/<form(.*?)>(.*?)<\/form>/si'; 
    preg_match_all($pattern,$string,$result);
    return $result;
  }

 

匹配符:

.   匹配除回车以外的任意字符 a.c  abc abbbbc
()  字符串分组 (a|b) a或b 
[]  定义字符类,匹配括号中的一个字符 [0-9] [a-z] 等
[^]  表示否定括号中出现字符类中的字符,取反。[^0-9] 是数字
\   转义字符

限定符:

*   某个字符之后加星号表示该字符不出现或出现多次
? 表示该字符出现一次或不出现 最多1次
+   表示其前面字符出现一次或多次,但必须出现-次
{n,m}某个字符之后出现,表示该字符最少n次,最多m次
{m} 正好出现了m次
模式修正符
i 模式中的字符将同时匹配大小写字母
s 将字符串视为单行,换行符作为普通字符
x 将模式中的空白忽略
U 匹配最近的字符串  匹配多次

// 正则匹配 form 标签的 action 属性值

// 正则匹配 form 标签的 action 属性值
  function regular_form_action($string){
    $pattern = '/action[\s]*?=[\s]*?([\'\"])(.*?)\1/';
    if(preg_match($pattern,$string,$result)){
      return $result[2];
    }
    return null;
  }

// 正则匹配 input 标签

// 正则匹配 input 标签
  function regular_input_tags($string){
    $pattern = '/<input.*?\/?>/si'; 
    if(preg_match_all($pattern,$string,$result))
      {
        return $result; 
      }
    return null;
  }

匹配input截图

// 正则匹配 input 标签的 value 属性值

// 正则匹配 input 标签的 value 属性值
  function regular_input_value($string)
  {
    $pattern = '/value[\s]*?=[\s]*?([\'\"])(.*?)\1/';
        //         '/value=\"(.+)\"/isU'     这个也可以
        //         '|value="(.*)"|isU'
        //         '/<input .* value="(.*)>/'
    if(preg_match($pattern,$string,$result))
    {
      return $result[2];
    }
    return null; 
  }

 

// 正则匹配 textarea 标签

// 正则匹配 textarea 标签
  function regular_textarea_tags($string)
  {
      $pattern = '/(<textarea.*?>.*?<\/textarea[\s]*?>)/si'; 
     if(preg_match_all($pattern,$string,$result))
      {
          return $result[1];
       }
      return null;
  }

 

   // 正则匹配 select 标签

function regular_select_tags($string)
  {
    $pattern = '/<select(.*?)>(.*?)<\/select[\s]*?>/si';
    preg_match_all($pattern,$string,$result);
    return $result;
  }

常用

preg_match_all('/src="(.*)">/isU',$html,$result3); 图片
preg_match_all('/<table.*>(.*)<\/table>/isU',$html,$result);
preg_match_all('/<td.*>(.+)<\/td>/isU',$html,$result);
preg_match_all('/value=\"(.+)\"/isU',$html,$result);
preg_match_all('|value="(.*)"|isU',$html,$result0);
preg_match_all('/<span.*>(.+)<\/span>/isU',$html,$result);

图片的:

目录
相关文章
|
1月前
|
PHP 数据格式
PHP 中的CURL 模拟表单的post提交
PHP 中的CURL 模拟表单的post提交
17 0
原生php自定义表单(支持基本类型+file多文件上传)
原生php自定义表单(支持基本类型+file多文件上传)
原生php实现自定义表单(支持基本类型+file类型(单文件上传))
原生php实现自定义表单(支持基本类型+file类型(单文件上传))
原生php实现自定义表单(基础类型)(特色:防止重复提交 防止输出空数据等等功能)
原生php实现自定义表单(基础类型)(特色:防止重复提交 防止输出空数据等等功能)
原生php实现自定义表单(基础类型)(特色:防止重复提交 防止输出空数据等等功能)
|
4月前
|
PHP 数据库
【PHP学习】—PHP连接数据库实现表单页面的验证功能(七)
【PHP学习】—PHP连接数据库实现表单页面的验证功能(七)
|
存储 XML JSON
PHP的表单完成是什么意思?底层原理是什么?
PHP的表单完成是什么意思?底层原理是什么?
头歌php 表单语言进阶
头歌php 表单语言进阶
228 0
头歌php 表单语言基础
头歌php 表单语言基础
134 0
|
PHP
PHP通过类来获取登录表单的数据并显示
PHP通过类来获取登录表单的数据并显示
128 0
PHP通过类来获取登录表单的数据并显示
|
安全 PHP 数据安全/隐私保护
PHP表单处理 ※
PHP表单处理 ※
182 0
PHP表单处理 ※