php 正则表达式 字符串中提取带小数点的数字

php 正则表达式 字符串中提取带小数点的数字,第1张

$regexp = '/(\d+)\(\d+)/is';

-----------------

<php

$total = "42234 EUR 53218 AUD CAD97164 311151 MYR 125042 NZD GBP84270 SGD60227 USD134400";

preg_match_all('/(\d+)\(\d+)/is', $total, $arr);

var_export($arr);

array (

0 =>

array (

0 => '42234',

1 => '53218',

2 => '97164',

3 => '311151',

4 => '125042',

5 => '84270',

6 => '60227',

7 => '134400',

),

1 =>

array (

0 => '42',

1 => '53',

2 => '97',

3 => '311',

4 => '125',

5 => '84',

6 => '60',

7 => '134',

),

2 =>

array (

0 => '234',

1 => '218',

2 => '164',

3 => '151',

4 => '042',

5 => '270',

6 => '227',

7 => '400',

),

1.首先,打开PHP编辑器并创建一个新的PHP文件,例如index.php。

2.在索引。PHP,输入以下代码:

节=34123.456美元;

If(strpos($nubs,')。”)!==false){

回声小块美元。“是步数”;

其他}{

回声小块美元。“不是小数”;

3.浏览器返回索引。页并打印出确定nubs是否为小数的结果。

扩展资料:

显示小数的方法:

浮点(Float$val[,int$precision])

将val的四舍五入结果返回到指定的精度(小数点的位数)。

精度也可以是负数或零(缺省值)。

如:

回声轮(3.6);//4

回声轮(3.60);//4

回声轮(1.95583,2);//1.96

一美元=12345678;

Echo轮($a,3);//12346000

但有时它不工作当你有像12。3 13。4 15 6这样的数字

//要转换成12.30、13.40、15、60的值,我们必须使用另一种强大的方法。

sprintf()[或printf()函数]函数

这个函数来源于c语言中的强printf()函数,所以它是一个强大的格式化工具。

描述:

字符串sprintf(String$format[,mixed$args[,mixed$…]])

的格式包括:

它的格式有以下值:

D是有符号的十进制整数

I是一个有符号的十进制整数

O无符号8个整数

U无符号十进制整数

X是一个小写abcdef的无符号十六进制数

X是大写ABCDEF中的一个无符号十六进制数

F/F浮点数

E/E是一个浮点数的科学表示

在%f和%e表示中,G使用总位数中最短的位来表示浮点数G,格式与G相同,但是作为指数

C单个字符

年代一个字符串

%本身显示百分号

random是js中的取随机数,是Math中的一个方法,用的时候是Mathrandom(),返回的是0-1之间的一个数(包括0,不包括1),

rand是php里的一个取随机数的方法,返回的是你规定的最大数和最小数之间的值(包括最大值和最小值)。

亲,你可以这样做呦!~~

如果只有这三个数,是不好弄出 0:85%  1:5%  2:10%的

但是你如果想提高某个数字出现的概率,你可以适当让这个数组增多。

你可以这样写:

<php

// 定义一个数组,里面有85个0

$num0 = array_fill(0, 85, 0); 

// 定义一个数组,里面有5个1

$num1 = array_fill(1, 5, 1); 

// 定义一个数组,里面有10个2

$num2 = array_fill(2, 10, 2); 

// 总数组,里面总共100个元素

$allNum = array_merge($num0, $num1, $num2);

// 随机取一个元素

$randKey = array_rand($allNum);

$randnum = $allNum[$randKey];

// 以上就可以实现出现0的概率是85% 出现1的概率是5% 出现2的概率是10%了,因为一共一百个数,里面有85个是0, 5个是1, 10个是2

希望可以帮到你呦!~如果有不正确的地方,欢迎指正!~~

本人博客:>

复制下面代码

<

//echo rand(1,100);

$max=0;

$min=100;

for($i=0;$i<=9;$i++){

$rand[$i]=rand(1,100);

if($rand[$i]>$max){

$max=$rand[$i];

}

if($rand[$i]<$min){

$min=$rand[$i];

}

$str=$rand[$i]",";

}

//去除最后一个逗号

$str="quchu";

$str=str_replace(",quchu","",$str);

echo "最大数是:"$max;

echo "<hr>";

echo "最小数是:"$min;

echo "<hr>";

//echo "原型是:"$str;

echo "<hr>";

echo "中间数是:"str_replace($min",","",str_replace($max",","",$str));

>

如果实际情况和你给出的例子这么简单,那就没有必要随机生成,使用 shuffle 打乱 array 其实就等于随机了。

$arr = array(1,2,3,4,5);

print_r($arr); // 输出 1,2,3,4,5

shuffle($arr); // 打乱顺序

print_r($arr); // 输出打乱顺序的数字

或者,使用rand随机生成。先复制一个相同的array,每生成一个随机数,就把它从array中删除,然后在剩余的数字中再生成随机。

$arr = array(1,2,3,4,5);

$arr_tmp = $arr;

for($i = 0; $i < count($arr_tmp) + $i; $i++) {

$rand = rand(0, count($arr_tmp) - 1);

echo "<p>第"($i + 1)"个随机数:"$arr_tmp[$rand]"</p>";

unset($arr_tmp[$rand]);

$arr_tmp = array_values($arr_tmp);

}

以上就是关于php 正则表达式 字符串中提取带小数点的数字全部的内容,包括:php 正则表达式 字符串中提取带小数点的数字、PHP怎么判断获得的数是否为小数、random()和rand()有什么区别 语言是PHP的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9547755.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存