<?php
 error_reporting (E_ALL);
 ini_set ('display_errors', 'on');
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div>
 <form>
  正则表达式 :
  <input type="text" name="regexPattern" size="50" value="<?php echo @stripslashes($_GET['regexPattern']);?>"> <br/>
  测试字符串 :
  <input type="text" name="regexStr" size="50" value="<?php echo @$_GET['regexStr'];?>"> <br/>

<input type="hidden" name="funcName" value="testRegex"/> <br/>
    
  <input type="reset" value="重置内容" style="margin:0 30 0 30;"/>
  <input type="submit" value="执行方法"/>
 </form>
</div>
<?php
if(!empty($_GET['funcName']) && !empty($_GET['regexPattern']) && !empty($_GET['regexStr'])){
 $funcName = trim($_GET['funcName']);
 $param1   = stripslashes(trim($_GET['regexPattern']));
 $param2   = stripslashes(trim($_GET['regexStr']));
 $funcName($param1, $param2);
}
die;

function testRegex($pattern, $subject){
 if(preg_match($pattern, $subject, $matches)){
  var_dump($matches);
 }else{
  echo "preg_match({$pattern}, {$subject}) 未匹配到"."\n";
 }

echo "<hr/>";

if(preg_match_all($pattern, $subject, $matches)){
  var_dump($matches);
 }else{
  echo "preg_match_all({$pattern}, {$subject}) 未匹配到"."\n";
 }
}

各种正则模式:

'email' => "/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/",
'telAndPhone' => "/(^([0-9]{3})?-?[0-9]{8}$)|(^([0-9]{4})?-?[0-9]{7}$)|(^1[0-9]{10}$)/",
'alphabet' => "/^[a-zA-Z]+$/",

php正则测试demo、动态函数的更多相关文章

  1. <正则吃饺子> :关于redis集群的测试demo

    redis集群的测试demo,来自网络,具体不详. 1.下载地址,如下:http://download.csdn.net/detail/u012543819/9729291 2.项目是java项目,结 ...

  2. JavaScript之 ------ 函数(一般函数、动态函数、匿名函数)

    JavaScript之 ------ 函数(一般函数.动态函数.匿名函数) 函数 一.一般函数 1.格式: function 函数名(形式参数...) { 执行语句: return 返回值: } 函数 ...

  3. 静态/动态函数库设计,王明学learn

    静态/动态函数库设计 Linux应用程序设计中需要的外部函数主要由函数库和系统调用来提供. 两者区别: 一.函数库分类 函数库按照链接方式可分为: 1.静态链接库 对函数库的链接是放在编译时期(com ...

  4. online ddl 使用、测试及关键函数栈

    [MySQL 5.6] MySQL 5.6 online ddl 使用.测试及关键函数栈  http://mysqllover.com/?p=547 本文主要分为三个部分,第一部分是看文档时的笔记:第 ...

  5. android gps开发必备资料(含测试demo下载)

    入门资料参考: How accurate is Android GPS? Part 1: Understanding Location Data How accurate is Android GPS ...

  6. python动态函数名的研究

    所谓动态函数名,就是使用时完全不知道是叫什么名字,可以由用户输入那种. 一般人习惯性会想到eval或exec, 但是众所周知,这样的写法不安全而且容易引起问题,而且不pythonic.而且使用时必须把 ...

  7. 所有文章的测试Demo

    Mqtt C++ Client 测试Demo https://pan.baidu.com/s/1Ue00GYv2SUd8aTquhvOW1w

  8. 静态库与动态库的制作以及程序的动态函数库解析ldd;ldconfig与/etc/ld.so.conf

    静态库的制作步骤: (1)gcc -c mylib.c -o mylib.o (2)ar rc libmylib.a mylib.o 动态库的制作步骤: gcc -shared mylib.c -o ...

  9. PHP代码审计3-SQL注入,CSRF,动态函数执行与匿名函数执行,unserialize 反序列化漏洞,变量覆盖,文件管理,文件上传

    SQL注入 审计语句 [输入参数] SELECT,DELETE,UPDATE,INSERT 防御 转义: 1.开启gpc:判断解析用户提示的数据 2.mysql_real_escape_string( ...

随机推荐

  1. jquery的一些select操作小记

    添加option $("#ID option").each(function(){ if($(this).val() == 111){ $(this).remove(); } }) ...

  2. C# 中的装箱与拆箱

    转角撞倒猪 原文 C# 中的装箱与拆箱   装箱:将一个数据项(副本)从栈中自动复制到堆中的行为. int i = 8; object o = i; // 装箱 // 首先在堆中开辟出一片区域,再将 ...

  3. Java + Excel 接口自动化

    最近项目比较悠闲,想找点事干,写了个 Excel 接口测试的 "框架" 以前用 python 写过一个,这次用 java, 应该说框架都不算,反正就是写了,能帮我解决问题就行. 当 ...

  4. sonar之安装篇

    sonar 是一个很好的质量度量平台,安装方式有很多种.下面我教大家使用j2ee 容器的方式安装,我们使用tomcat 1.准备: 1.1 环境redhat linux1.2 下载sonar 从htt ...

  5. 浏览器插件 - Chrome 对 UserScript 的声明头(metadata)兼容性一览

    1.这里的UserScript指的是,油猴插件或者Tampermonkey插件等支持的格式如下例子: // ==UserScript== // @name // @namespace http://A ...

  6. js自定义排序

    摘要 有个js对象数组 var ary=[{id:1,name:"b"},{id:2,name:"b"}] 需求是根据name 或者 id的值来排序,这里有个风 ...

  7. STM32的can现场总线实验心得

    最近在搞stm32实验板的can现场总线实验,之前只是搞过STC51的串口通信,相比之下,发觉can总线都挺复杂的.开始时,知道自己是新手,只知道can总线跟串行通信,485通信,I2C通信一样都是用 ...

  8. UVALIVE 3026 Period

    题意:给你一个字符串,问第i位前是否有循环节,若存在,则循环节是多少? 思路:考察失配函数f[i]的意义.只要i%(i-f[i])==0,则循环节长度为i/(i-f[i]).字符在[0,f[i]],[ ...

  9. 50道经典的JAVA编程题(目录)

    这份题从2013做到2014啊...哈哈,整理个目录吧.为了好查阅,也为了监督自己好好的去做完这50道题.当然,有些题实在做得没意思就跳过了,或者自己改题了.题目来源于:http://blog.sin ...

  10. HDU-4705 Y 树形DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4705 题意:给一颗树,从树上任意选择3个点{A,B,C},要求他们不在一条链上,求总共的数目. 容易想 ...