php正則匹配數字
Ⅰ php正則表達式提取數字,字元串中提取數字
<?php
$str="sssefss$2345.1234dddfffeds$456$00.23RR";
$pattern='/$(d+.?d+)/';
if(preg_match_all($pattern,$str,$match)){
echo'<pre>';
print_r($match);
}else{
echo'沒有找到!';
}
結果:
Array
(
[0]=>Array
(
[0]=>$2345.1234
[1]=>$456
[2]=>$00.23
)
[1]=>Array
(
[0]=>2345.1234
[1]=>456
[2]=>00.23
)
)
Ⅱ php 正則表達式如何匹配一個有范圍的數字
例如34~78
[3][4-9] | [4-6][0-9] | [7][0-8]
其實要拆成幾部分34~39,40~69,70~78,我一般這么寫,具體要看你的范圍大小。如果不太明白可以發准確數字,幫你寫個
Ⅲ 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 正則表達式 匹配數字
沒看懂什麼意思,你給個例子吧,包括原始數據時什麼樣的,最後結果是什麼樣的。我看你的語句,你是想把第一個數字後的所有東西都去掉嗎?
你的正則不對是因為貪婪匹配的原因,第一個(.*)就把所有的東西都匹配了,後面的什麼都沒匹配到。
Ⅳ php正則匹配數字
式子:/^[a-zA-Z0-9]+$/u
釋義:
"/":表示正則表達式的定義,固定寫法。
"^":表示開頭。
"[]":表示字元組。匹配所包含的任意一個字元。如,「[ab]」匹配「plain」中的「a」。
"a-z":表示匹配小寫字母a-z的字母範圍。
"A-Z":表示匹配大寫字母A-Z的字母範圍。
"0-9":表示匹配0-9的數字范圍。
"+":表示匹配次數大於等於1。
"$":匹配輸入行尾。如果設置了RegExp對象Multiline屬性,$也匹配「 」或「 」之前的位置。
"u":最後的u是模式修飾符,嚴格的說可能叫預定義常量。表示使用unicode進行匹配。
(5)php正則匹配數字擴展閱讀:
正則表達式的特點是:
1. 靈活性、邏輯性和功能性非常強;
2. 可以迅速地用極簡單的方式達到字元串的復雜控制。
3. 對於剛接觸的人來說,比較晦澀難懂。
由於正則表達式主要應用對象是文本,因此它在各種文本編輯器場合都有應用,小到著名編輯器EditPlus,大到Microsoft Word、Visual Studio等大型編輯器,都可以使用正則表達式來處理文本內容。
Ⅵ 求一個PHP正則表達式匹配(字母、數字、漢字、下劃線)
<?php
$pat='#^([a-zA-Z]+|[0-9]+|[x{4e00}-x{9fa5}]+)$#u';
$s="你好";
var_mp(preg_match($pat,$s));
Ⅶ php 正則 匹配 括弧內數字
你的已經是寫「對」了的,只不過你沒有提取數字而已。改一下模式:'/\(([\s\S]*?)\)/',這樣就能利用$matchPlayers[1]得到你要的數字了。在模式中,括弧有子模式的作用,也就是從左到右,括弧引起的數據從1開始到n,在匹配結果中用下標1到n提取。$matchPlayers[0]則是總結果。詳細參考PHP手冊。
Ⅷ php正則表達式限制數字個數
\d{4} 這個意思其實是可以匹配至少4個連續的數字,就是說123肯定匹配不上,但是像1234,12345,1234abc這種,只要其中有4個數字連續的,都可以匹配上。如果想卡死只匹配四個數字,那麼得加上開始和結束符 ^\d{4}$
Ⅸ php正則如何在一個字元串中匹配一個數字
$str_arr[] = '1,11,21,35,41';
$str_arr[] = '1,5,15,21,35,41';
$str_arr[] = '1,5,';
$str_arr[] = '5';
$matche_arr = array();
foreach($str_arr as $value){
if(preg_match('/(^|,)5(,|$)/',$value)){
$matche_arr[] = $value;
}
}
print_r($matche_arr);
Ⅹ 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);
?>