php正則表達式提取
A. 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);// 替換[]為空
?>
B. 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個
?>
C. php求正則表達式。提取指定開頭字元串和指定結束字元串之間的一段字元串。
preg_match('/yu.*cv/',$temp1,$m);
echo $m[0];
D. PHP正則表達式提取字元串中小括弧中的數字
<?php
$str = "abcd(ab)(1),efg(10),hijk(lmn)(5)"; //可以設置成任意字元串
preg_match_all("|(.*)[(](.*)[)](.*)|isU",$str,$str_ary);
$total = 0;
foreach( $str_ary[2] as $value)
$total += intval($value);
echo $total;
?>
E. php 正則表達式 提取指定超鏈接中的url
preg_match_all('/<a[^>]+href="([^"]+)"[^>]+class="green"
[^>]+/Ui', $str, $arr);
print_r($arr[1]);
F. php正則表達式提取鏈接
$preg='/<a .*?href="(.*?)".*?>/is';
$str ='<a href="鏈接">123</a><a href="鏈接" target="_blank">345</a><a target="_blank" href="鏈接">678</a>';
preg_match_all($preg,$str,$match);
var_mp($match);
G. php 正則表達式 取出 li標簽里的內容
可以寫一個函數,獲取到數組。
正則表達式是: <a[^>]*>s*([^<]*)s*</a>s*<[^>]*class="date">([^<]*)<
請對上面的 PHP中特殊符號進行轉義。
$1 是內容,$2是日期
函數寫法參考
<?php
$str='
<ul><li><ahref="#">內容111</a></li><li><ahref="#">內容111</a></li><li><ahref="#">內容111</a></li><li><ahref="#">內容111</a></li></ul>
<ol><li><ahref="#">內容2</a></li><li><ahref="#">內容2</a></li><li><ahref="#">內容2</a></li><li><ahref="#">內容12</a></li></ol>
';
$search='/<ul>(.*?)</ul>/is';
preg_match_all($search,$str,$r,PREG_SET_ORDER);
print_r($r);
$search='/<ol>(.*?)</ol>/is';
preg_match_all($search,$str,$r,PREG_SET_ORDER);
print_r($r);
?>
H. php 怎麼用正則表達式從一段內容里提取出一段連續的10位數字
如果是連續的隨機數
preg_match("/\d+/i",$str,$match);
$matches[0] 就是
如果是非連續的
$str = preg_replace("/\D/", 「」, $str);
$str 就是