php正則數字
『壹』 php 正則表達式 匹配數字
沒看懂什麼意思,你給個例子吧,包括原始數據時什麼樣的,最後結果是什麼樣的。我看你的語句,你是想把第一個數字後的所有東西都去掉嗎?
你的正則不對是因為貪婪匹配的原因,第一個(.*)就把所有的東西都匹配了,後面的什麼都沒匹配到。
『貳』 php 正則表達式 提取字元串內小括弧中的數字,只要數字
$str="一二三四五ABN420122(電話:123455)";
preg_match_all("/[^\(]*\(\D*(\d*).*/i",$str,$str_ary);
var_export($str_ary);
exit;
『叄』 php正則表達式限制數字個數
\d{4} 這個意思其實是可以匹配至少4個連續的數字,就是說123肯定匹配不上,但是像1234,12345,1234abc這種,只要其中有4個數字連續的,都可以匹配上。如果想卡死只匹配四個數字,那麼得加上開始和結束符 ^\d{4}$
『肆』 PHP程序正則表達式找出字元串的數字
<?php
$string='alkfjlda111-444-999alkfd111-444-888lsakf9008';
//第一種
preg_match_all('/d{3}-d{3}-d{3}/',$string,$arr1);
//第二種
preg_match_all('/d{3}/',$string,$arr2);
print_r($arr1);
echo"<hr/>";
print_r($arr2);
『伍』 php正則字元串,匹配多個字母後邊的數字作為參數
按照你的要求編寫的PHP正則匹配程序如下
<?php
$str = "r1g2n3s4p5";
$regex="/([rgnsp])(d+)/";
$arr=Array();
preg_match_all($regex,$str,$result);
for($i=0;$i<count($result[1]);$i++){
$arr[$result[1][$i]]=$result[2][$i];
}
var_mp($arr);
?>
『陸』 Php 正則表達式 提取 「[數字]」
最簡單的辦法就是把非數字轉換為空
<?PHP
$str = '[3]a1a22[26]b2b[123]';
preg_match_all('/\[\d+\]/', $str, $temp);// 正則查找[數字]
foreach ($temp[0] as $v)
{
$num .= $v . ' ';// 組合結果
}
echo preg_replace('/\[|\]/', '', $num);// 替換[]為空
?>
『柒』 php 正則表達式 只能包含字母和數字
式子:/^[a-zA-Z0-9]+$/u
釋義:
(1)「/」:正則表達式的定義,固定的書寫形式;
(2)「^」:表示開始;
(3)「[]」:表示一個字元組,匹配包含的任何字元。例如,「[ab]」匹配「plain」中的「a」;
(4)「a-z」:與小寫字母a-z匹配的字母範圍;
(5)「A-Z」:表示與大寫字母A-Z匹配的字母範圍;
(6)「0-9」:匹配范圍為0-9的數字;
(7)「+」:表示匹配數為一個或多個;
(8)「$」:匹配輸入行的結尾。如果設置了RegExp對象的Multiline屬性,則$也匹配「 」或「 」之前的位置;
(9)「u」:最後一個u是模式修飾符,嚴格來說,它可以是預定義的常數。表示使用unicode進行匹配。
(7)php正則數字擴展閱讀:
其它正則表達式符號的含義:
(1)「*」:與上一個子表達式匹配任意次。例如,zo*匹配「z」以及「zo」和「zoo」。*等效於{0,};
(2)「?」:匹配上一個子表達式零或一次。例如,「做(es)?」匹配「do」或「does」。?等效於{0,1};
(3)「{n}」:n是一個非負整數。匹配被確定n次。例如,「o{2}」不能與「Bob」中的「o」匹配,但是可以與「food」中的兩個o匹配;
(4)「{n,}」:n是一個非負整數。至少匹配n次。例如,「o{2,}」不能匹配「Bob」中的「o」,但是可以匹配「foooood」中的所有o。「o{1,}」等效於「o+」。「o{0,}」等效於「o*」;
(5)「 {n,m}」:m和n是非負整數,其中n <= m。 至少匹配n次,最多匹配m次。 例如,「 o {1,3}」將匹配「 fooooood」中的前三個o作為一個組,最後三個o作為一個組。 「 o {0,1}」等效於「 o?」。 請注意,逗號和兩個數字之間不能有空格。
『捌』 php正則表達式字元串中提取數字,並截取其中的6位
<?php
$str='b37ba964bb7dfab1869e1cf8';
$preg="/d/is";
preg_match_all($preg,$str,$arr);
$temp=implode('',$arr[0]);
echo$temp;//匹配的數字
echo'<br/>'.substr($temp,1,4);//第2位開始取4個
echo'<br/>'.substr($temp,2,5);//第3位開始取5個
?>
『玖』 php正則 匹配 數字0-10
匹配數字0-10的php正則表達式 ^([0-9]|10)$
完整的php程序如下
<?php
$str="10";
$regex="/^([0-9]|10)$/";
if(preg_match($regex,$str)){
print_r("匹配");
}else{
print_r("不匹配");
}
?>
運行結果
匹配
『拾』 PHP正則提取數字
不需要用正則:
<?php
$foo = '|194318';
$s = explode('|', $foo);
echo $s[1];