【php】正則驗證字串是否為數字
方法一
php中利用正則表示式驗證字串是否為數字一件非常容易的事情,最主要的是如何寫好正則表示式以及掌握正則表示式的寫法,在此利用正則表示式的方式來列舉一下判斷數字的方法。
<?
if($str) {
if(eregi("^[0-9]+$",$str)) {
$str=(int)$str;
} else {
echo "獲取到的資料不是有效的數字型別,操作將停止!";
exit();
}
} else {
echo "需要驗證的資料為空,操作停止!";
exit();
}
?>
方法二
建議大家對關鍵的引數必須做過濾。如數字正則過濾
if (preg_match("/^\d*$/",$fgid)) {
echo('是數字');
} else {
echo('不是數字');
}
或者用函式
if(is_numeric($fgid)){
echo('是數字');
} else {
echo('不是數字');
}
這兩種方法的區別是 is_numeric小數也會認為是數字,而前面正則會把小數點當作字元。
附一些常用的正則運算:
驗證數字:^[0-9]*$
驗證n位的數字:^\d{n}$
驗證至少n位數字:^\d{n,}$
驗證m-n位的數字:^\d{m,n}$
驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$
驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$
驗證有1-3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$
驗證非零的正整數:^\+?[1-9][0-9]*$
驗證非零的負整數:^\-[1-9][0-9]*$
驗證非負整數(正整數 + 0) ^\d+$
驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$
驗證長度為3的字元:^.{3}$
驗證由26個英文字母組成的字串:^[A-Za-z]+$
驗證由26個大寫英文字母組成的字串:^[A-Z]+$
驗證由26個小寫英文字母組成的字串:^[a-z]+$
驗證由數字和26個英文字母組成的字串:^[A-Za-z0-9]+$
驗證由數字、26個英文字母或者下劃線組成的字串:^\w+$
驗證使用者密碼:^[a-zA-Z]\w{5,17}$ 正確格式為:以字母開頭,長度在6-18之間,只能包含字元、數字和下劃線。
驗證是否含有 ^%&‘,;=?$\” 等字元:[^%&‘,;=?$\x22]+
驗證漢字:^[\u4e00-\u9fa5],{0,}$
驗證Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
驗證InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
驗證電話號碼:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:–正確格式為:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
驗證身份證號(15位或18位數字):^\d{15}|\d{}18$
驗證一年的12個月:^(0?[1-9]|1[0-2])$ 正確格式為:“01”-“09”和“1”“12”
驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式為:01、09和1、31。 整數:^-?\d+$
非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$
正浮點數 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮點數(負浮點數 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
負浮點數 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮點數 ^(-?\d+)(\.\d+)?
(轉)
相關推薦
【php】正則驗證字串是否為數字
方法一 php中利用正則表示式驗證字串是否為數字一件非常容易的事情,最主要的是如何寫好正則表示式以及掌握正則表示式的寫法,在此利用正則表示式的方式來列舉一下判斷數字的方法。 <? if($str) { if(eregi("^[0-9]+$",$str))
【PHP】正則表示式判斷網址是否帶http://或https://
// 匹配http(s)的表示式 $preg = "/^http(s)?:\\/\\/.+/"; 示例: $url = "https://www.baidu.com/"; $preg = "/^http(s)?:\\/\\/.+/"; if(preg_match($preg,$
【PHP】正則表示式匹配標籤
// 匹配<img>標籤的表示式 $preg = "/<img.*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/i"; 示例: $img='<div class="div">
【PHP】正則表示式匹配最後一張圖片並替換
// 要搜尋的內容 $content = '<div class="div"><img class="img" width="200" height="100" src="./../images/img1.jpg" /> <img class="img" w
【php】正則表示式提取img的src
先上程式碼: <?php $pattern='/<img((?!src).)*src[\s]*=[\s]*[\'"](?<src>[^\'"]*)[\'"]/i'; $st
【JavaScript】正則表示式--非貪婪模式擷取任意字串的筆記
場景要將下面的字串擷取兩個{title:***,url:***}來。12345<script>{title:'RegExp 物件參考手冊',url:'http://sodino.com/regexp.asp'},{title:'w3cSchool script', url:'http://www.
【Python】正則表達式1(未完)
pes mmu get regular rop 則表達式 line out github 1、正則表達式唯一的用途就是在文本中匹配和尋找模式,模式可以簡單,也可以復雜。 2、Regexr 這個網站很個性的就是,有一個community標簽,打開後可以看到評分由高到低
【轉】正則化相關鏈接
blog class bsp src rop 折疊 img detail link 正則化,歸一化的概念 基於Matlab介紹正則化方法 正則化方法:L1和L2 regularization、數據集擴增、dropout 基於Matlab介紹機器學習中的正則化,理解
【轉載】正則表達式
屬性 mark 可能 表達式 控制 回車符 空白 ^c 開始與結束 【轉載】http://www.runoob.com/regexp/regexp-syntax.html 正則表達式 - 語法 正則表達式(regular expression)描述了一種字符串匹配的模式(
【javascript】正則表達式match、exec和test的使用
p s 下標 mat http [0 使用 regex es2017 false 正則表達式match、exec和test的使用 match和exec在匹配成功時返回的都是數組,在沒有匹配上時返回的都是null;test在匹配成功是返回true,在沒有匹配時返回的是fals
【python】-正則表達式
() 兩個 表達 9.png 匹配 斜杠 clas image 技術 匹配時每一個子項都要用括號括起來。 re.split()分割 count=2代表只替換前兩個數字 匹配反斜杠 【python】-正則表達式
【Python】正則表達式
代碼 ... ack Go 當我 log 精確 不用 分代 說明:本文主要是根據廖雪峰網站的正則表達式教程學習,並根據需要做了少許修改,此處記錄下來以備後續查看。 0x01 正則表達式概念及符號含義 掌握正則表達式,只需要記住不同符號所表示的含義,以及對目標對象模式(或
【shell】正則表達式
alt blog 溫度 can href aci txt cnblogs ble 當一個文件或命令輸出中抽取或過濾文本時,可以使用正則表達式(RE),正則表達式是一些特殊或很不特殊的字符串模式的集合。 在Linux中grep、awk、sed均可解釋正則 1.基本元字符集
【PHP】從2個字串找到相同的部分,展示最長的字串
思路: 最容易想到的方法,是把第一個字串按順序擷取,與第二個字串對比,存在則寫入陣列,最後再從陣列找到重複之中最長的那個輸出 字串1:/a/b/c/?.oietr?e/f/g/zwty.cn 字串2:/a/b/c/awp.neeg/e/f/g/zxtn.cc $str1 = '/a/b/c/?
【轉】正則表示式–零寬斷言詳解
零寬斷言的意思是(匹配寬度為零,滿足一定的條件/斷言) 我也不知道這個詞語是那個王八蛋發明的,簡直是太拗口了。 零寬斷言用於查詢在某些內容(但並不包括這些內容)之前或之後的東西,也就是說它們像\b,^,$那樣用於指定一個位置,這個位置應該滿足一定的條件(即斷言),因此它
【spider03】正則表示式
什麼是正則表示式 正則表示式是對字串操作的一種邏輯公式,就是用實現定義好的一些特定字元、及這些特定字元的組合,組成一個“規則字串”,這個“規則字串”用來表達對字串的一種過濾邏輯。 非Python獨有,re模組實現 常見匹配模式 ^ 匹配字串的開頭 $ 匹配字串
簡單 ajax+php的正則驗證
HTML 登錄檔單 <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; cha
【轉】正則匹配函式——regcomp和regexec
標準的C和C++都不支援正則表示式,但有一些函式庫可以輔助C/C++程式設計師完成這一功能,其中最著名的當數Philip Hazel的Perl-Compatible Regular Expression庫,許多Linux發行版本都帶有這個函式庫。 C語言處理正則表示式常用的函式有regco
正則驗證姓名否中文(包含生僻字)
target href nbsp org http 表達式 ont 參考 code 1.常見的中文 \u4e00-\u9fbb 和 \u4e00-\u9fa5 (不包含生僻字) 2.比較廣泛的中文漢字。(包含了咱們需要的生僻字 和 不需要的很多字符 比如 中文句號分號逗
PHP常用正則驗證
手機號,身份證,ip驗證 //正則驗證手機號 正確返回 true function preg_mobile($mobile) { if(preg_match("/^1[34578]\d{9}$/", $mobile)) { return TRUE; } else {