⑴ 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;