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);
?>