1. <?php
  2. /**
  3. * 常用的正则表达式来验证信息.如:网址 邮箱 手机号等
  4. */
  5. class check {
  6. /**
  7. * 正则表达式验证email格式
  8. *
  9. * @param string $str    所要验证的邮箱地址
  10. * @return boolean
  11. */
  12. public static function isEmail($str) {
  13. if (!$str) {
  14. return false;
  15. }
  16. return preg_match('#[a-z0-9&\-_.]+@[\w\-_]+([\w\-.]+)?\.[\w\-]+#is', $str) ? true : false;
  17. }
  18. /**
  19. * 正则表达式验证网址
  20. *
  21. * @param string $str    所要验证的网址
  22. * @return boolean
  23. */
  24. public static function isUrl($str) {
  25. if (!$str) {
  26. return false;
  27. }
  28. return preg_match('#(http|https|ftp|ftps)://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?#i', $str) ? true : false;
  29. }
  30. /**
  31. * 验证字符串中是否含有汉字
  32. *
  33. * @param integer $string    所要验证的字符串。注:字符串编码仅支持UTF-8
  34. * @return boolean
  35. */
  36. public static function isChineseCharacter($string) {
  37. if (!$string) {
  38. return false;
  39. }
  40. return preg_match('~[\x{4e00}-\x{9fa5}]+~u', $string) ? true : false;
  41. }
  42. /**
  43. * 验证字符串中是否含有非法字符
  44. *
  45. * @param string $string    待验证的字符串
  46. * @return boolean
  47. */
  48. public static function isInvalidStr($string) {
  49. if (!$string) {
  50. return false;
  51. }
  52. return preg_match('#[!#$%^&*(){}~`"\';:?+=<>/\[\]]+#', $string) ? true : false;
  53. }
  54. /**
  55. * 用正则表达式验证邮证编码
  56. *
  57. * @param integer $num    所要验证的邮政编码
  58. * @return boolean
  59. */
  60. public static function isPostNum($num) {
  61. if (!$num) {
  62. return false;
  63. }
  64. return preg_match('#^[1-9][0-9]{5}$#', $num) ? true : false;
  65. }
  66. /**
  67. * 正则表达式验证身份证号码
  68. *
  69. * @param integer $num    所要验证的身份证号码
  70. * @return boolean
  71. */
  72. public static function isPersonalCard($num) {
  73. if (!$num) {
  74. return false;
  75. }
  76. return preg_match('#^[\d]{15}$|^[\d]{18}$#', $num) ? true : false;
  77. }
  78. /**
  79. * 正则表达式验证IP地址, 注:仅限IPv4
  80. *
  81. * @param string $str    所要验证的IP地址
  82. * @return boolean
  83. */
  84. public static function isIp($str) {
  85. if (!$str) {
  86. return false;
  87. }
  88. if (!preg_match('#^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$#', $str)) {
  89. return false;
  90. }
  91. $ipArray = explode('.', $str);
  92. //真实的ip地址每个数字不能大于255(0-255)
  93. return ($ipArray[0]<=255 && $ipArray[1]<=255 && $ipArray[2]<=255 && $ipArray[3]<=255) ? true : false;
  94. }
  95. /**
  96. * 用正则表达式验证出版物的ISBN号
  97. *
  98. * @param integer $str    所要验证的ISBN号,通常是由13位数字构成
  99. * @return boolean
  100. */
  101. public static function isBookIsbn($str) {
  102. if (!$str) {
  103. return false;
  104. }
  105. return preg_match('#^978[\d]{10}$|^978-[\d]{10}$#', $str) ? true : false;
  106. }
  107. /**
  108. * 用正则表达式验证手机号码(中国大陆区)
  109. * @param integer $num    所要验证的手机号
  110. * @return boolean
  111. */
  112. public static function isMobile($num) {
  113. if (!$num) {
  114. return false;
  115. }
  116. return preg_match('#^13[\d]{9}$|14^[0-9]\d{8}|^15[0-9]\d{8}$|^18[0-9]\d{8}$#', $num) ? true : false;
  117. }
  118. /**
  119. * 检查字符串是否为空
  120. *
  121. * @access public
  122. * @param string $string 字符串内容
  123. * @return boolean
  124. */
  125. public static function isMust($string = null) {
  126. //参数分析
  127. if (is_null($string)) {
  128. return false;
  129. }
  130. return empty($string) ? false : true;
  131. }
  132. /**
  133. * 检查字符串长度
  134. *
  135. * @access public
  136. * @param string $string 字符串内容
  137. * @param integer $min 最小的字符串数
  138. * @param integer $max 最大的字符串数
  139. */
  140. public static function isLength($string = null, $min = 0, $max = 255) {
  141. //参数分析
  142. if (is_null($string)) {
  143. return false;
  144. }
  145. //获取字符串长度
  146. $length = strlen(trim($string));
  147. return (($length >= (int)$min) && ($length <= (int)$max)) ? true : false;
  148. }
  149. }

检查字符串长度 检查字符串是否为空 用正则表达式验证出版物的ISBN号 用正则表达式验证邮证编码 验证字符串中是否含有汉字的更多相关文章

  1. c c++怎么判断一个字符串中是否含有汉字

    c c++怎么判断一个字符串中是否含有汉字 (2013-02-05 10:44:23) 转载▼     #include  #include  int main() { char sztext[] = ...

  2. java判断字符串中是否含有汉字

    原文:http://www.open-open.com/code/view/1426332240717 判断字符串中是否含有汉字: String str = "test中文汉字"; ...

  3. c# 判断字符串中是否含有汉字,数字

    正则表达式使用时需要引用 using System.Text.RegularExpressions; private void buttonX1_Click(object sender, EventA ...

  4. php_match/preg_match_all 默认有字符串长度限制

    php_match/preg_match_all 默认有字符串长度限制:52500(或许你的服务器环境是更长,或者更短),当字符串长度大于52500,只能匹配到52500数据,超出的部分会被系统自己截 ...

  5. PHP获取中英文混合字符串长度及截取

    1.字符串长度 PHP获取中英文混合字符串长度的实现代码如下,1中文=1位,2英文=1位,可自行修改 /** * PHP获取字符串中英文混合长度 * @param $str string 字符串 *  ...

  6. Shell脚本中字符串判空:使用-z 字符串长度为0时,为真,-n字符串长度不为0,为真。这两个都不靠谱【转】

    最近发现使用  -z   和  -n  来判断字符串判空,或不空时,很不靠谱. 使用下面的方法最可靠: if [ "x${value}" == "x" ]    ...

  7. php中常用的字符串长度函数strlen()与mb_strlen()实例解释

    int strlen ( string $string )  int strlen ( string $string )  获取给定字符串的[字节]长度 成功则返回字符串$string的长度,如果$s ...

  8. ★★★【卡法 常用js库】: js汇合 表单验证 cookie设置 日期格式 电话手机号码 email 整数 小数 金额 检查参数长度

    [卡法 常用js库]: js汇合 表单验证  cookie设置  日期格式  电话手机号码  email  整数  小数  金额   检查参数长度 // +---------------------- ...

  9. php 字符串长度函数

    php 字符串长度函数 php 字符串长度函数,在php测试字符串长度的函数有二个,一个是strlen,另一个是mb_strlen前一个默认是支持,后一个需要开启一个插件,下面我们来介绍一下二个函数的 ...

随机推荐

  1. CF 191C Fools and Roads lca 或者 树链剖分

    They say that Berland has exactly two problems, fools and roads. Besides, Berland has n cities, popu ...

  2. CF 486D vailid set 树形DP

    As you know, an undirected connected graph with n nodes and n - 1 edges is called a tree. You are gi ...

  3. NeHe OpenGL教程 第三十二课:拾取游戏

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  4. ylbtech-Unitity-cs:计算阶乘值

    ylbtech-Unitity-cs:计算阶乘值 1.A,效果图返回顶部   1.B,源代码返回顶部 1.B.1, using System; namespace Functions { public ...

  5. Yii 框架表单验证---实例

  6. ubuntu 安装compiz后 黑屏无法进入处理

    因为我们显卡的原因而出现不兼容,设置之后会出现菜单栏消失.窗口假死等现象,请保持平静心态,默默重启,如果发现进不去桌面了,可以试试Ctrl+Alt+F1进入字符界面,输入以下命令: dconf res ...

  7. Zabbix监控mysql配置及故障告警配置

    本文主要介绍zabbix监控mysql的配置,包含使用zabbix自带模板监控mysql相关信息及自定义key监控mysql同步情况.同时介绍了触发器的创建及zabbix通过邮件方式告警配置. 一.配 ...

  8. NLog文章系列——如何配置NLog

    NLog支持以多种不同方式配置,目前同时支持直接编程和使用配置文件两种方法.本文将对目前支持的各种配置方式作详细描述. 日志配置 通过在启动的时候对一些常用目录的扫描,NLog会尝试使用找到的配置信息 ...

  9. sql server 作业导出放到另外一台机器执行时报错的解决方法

    SQL Server2008脚本创建作业失败,提示: 引用内容消息 515,级别 16,状态 2,过程 sp_add_job,第 137 行不能将值 NULL 插入列 'owner_sid',表 'm ...

  10. CentOS 6.5 安装 Nginx 1.7.8 教程

    http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29791971&id=4702007 Nginx是一款轻量级的Web ...