⑴ 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進行匹配。
(1)php匹配擴展閱讀:
正則表達式的特點是:
1. 靈活性、邏輯性和功能性非常強;
2. 可以迅速地用極簡單的方式達到字元串的復雜控制。
3. 對於剛接觸的人來說,比較晦澀難懂。
由於正則表達式主要應用對象是文本,因此它在各種文本編輯器場合都有應用,小到著名編輯器EditPlus,大到Microsoft Word、Visual Studio等大型編輯器,都可以使用正則表達式來處理文本內容。
⑵ php正則匹配怎麼寫
首先,這段代碼是沒有問題的。
你那裡匹配不到可能是因為你的$a並不是你提供的這一段,而是其他的帶有換行的字元串。
解決換行的方法是使用模式修正符s,得到:
preg_match("/<asrc.*?>/s",$a,$arr);
另外,看情況,可以追加一個模式修正符i,不區分大小寫。
⑶ PHP中如何匹配多個滿足正則表達式的字元串
php split -- 用正則表達式將字元串分割到數組中
例子:
<?php
$date = "04/30/1973";
list($month, $day, $year) = split ('[/.-]', $date); // 分隔符可以是斜線,點,或橫線
echo "Month: $month; Day: $day; Year: $year \n";
?>
來自:http://peakzhengj.blog.163.com/blog/static/42476992007112411227717/
⑷ php 正則匹配
不是很理解你要達到的效果,如果是要匹配||之間的內容,則正則表達式如下:
<meta charset="utf-8" />
<?php
$str='|0|123|1321|你在哪兒!|5|123|1321|我在哪兒!| ';
preg_match_all("/(.*?)\|/s",$str,$arr);
echo '<pre>';
print_r($arr);
echo '</pre>';
?>
匹配結果:
Array
(
[0] => Array
(
[0] => |
[1] => 0|
[2] => 123|
[3] => 1321|
[4] => 你在哪兒!|
[5] => 5|
[6] => 123|
[7] => 1321|
[8] => 我在哪兒!|
)
[1] => Array
(
[0] =>
[1] => 0
[2] => 123
[3] => 1321
[4] => 你在哪兒!
[5] => 5
[6] => 123
[7] => 1321
[8] => 我在哪兒!
)
)
⑸ php正則表達式 怎樣從後面開始匹配
preg_match_all("/<li>(.+)<\/li>/i",$st,$ma);
echo end($ma[1]);
雖然array_pop($ma[1])也可以得出這數組的最後一個元素 但是它會把這元素從原數組中刪除從而改變這數組 所以本人強烈不建議使用
⑹ php正則表達式如何匹配$
echopreg_replace('/\$a/','new','k$aj');
echopreg_replace('/$a/','new','k$aj');
嗯,這兩個都可以匹配到,建議用後面的
⑺ 關於PHP正則匹配
$pattern='/<dd seq="(.*)" type="1" uin="(.*)" qid="(.*)" qaid="" class="undeal">\r\n<li class="add_msg" tabIndex="1" title="附加消息:(.*)">/';
$str='<dd seq="(.*)" type="1" uin="(.*)" qid="(.*)" qaid="" class="undeal">
<li class="add_msg" tabIndex="1" title="附加消息:(.*)">';
var_mp(preg_match($pattern, $str,$matches));
var_mp($matches);
⑻ php正則表達式匹配
你是想匹配出所有的文本,然後用替換刪除掉嗎?
<?php
$str = <<<EOT
document.write('<script src= httpx://anab.it/HP/default.php ><\/script>');
document.write('<script src= httpx://focus.07168.net/images/default.php ><\/script>');
EOT;
preg_match_all('/document\.write\(\'<script\s+?src=\s*[^\s]*\s*><\\\\\/script>\'\);/', $str, $matches);
print_r($matches);
?>
⑼ php正則匹配
『這兩個都是變化的』假設其他部分不變化。就可以
<?php
$t='<a target="_blank" href="http://www.77l.com/game/3087.html">
<a target="_blank" href="http://www.77l.com/news/1.html">
<a target="_blank" href="http://www.77l.com/catelog/13087.html">';
preg_match_all('/<a\s+.*?\s+href=(["\'])http:\/\/www\.77l\.com\/(\w+)\/(\d+).html\1>/',$t, $m);
for($i=0,$len=count($m[2]); $i<$len; $i++)
echo $m[2][$i].' => '.$m[3][$i].'<br />';
=============
game => 3087
news => 1
catelog => 13087
⑽ PHP正則匹配
<?php
$str='<p>
相關新聞
學者:應立即全面放開二孩5年後養老危機將爆發
媒體:全面二孩政策最快或在年內實施
中國60歲以上老人達2.12億老齡化逐步加深
五六年前,江蘇徐州某鄉鎮幼兒園一個班能收三四十個孩子,現在大班只有三十個左右,中班只有二十多個,小班...<br/>';
preg_match_all('/<p>(.*?)<brs*/>/is',$str,$matches);
print_r($matches[1]);
exit;