Home >Backend Development >PHP Tutorial >PHP按照如下条件截取数字再比较
字符串:
TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56
要求:
1、截取每一个TKPC和TKMR后的连续5位数。(例中的截取出来就应该是TKPC有11090,12098,TKMR有12099,11059)
2、将截取后的数字按照如下条件对比,为真的echo yes。
2.1 TKPC的两组数字,如果有一组小于等于11069的话,ECHO TKPC。
2.1 TKMR的两组数字,如果有一组小于等于10999的话,ECHO TKMR。
非常感谢!
请给详细完整的代码。
<?php$str = 'TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56';function fn($str) { preg_match_all('/(TKPC|TKMR)(\d{5})/U', $str, $m); $res = array( 'TKPC' => 0, 'TKMR' => 0, ); foreach($m[1] as $k => $v){ $num = $m[2][$k]; if($v == 'TKPC' && $num <= 11069 || $v == 'TKMR' && $num <= 10999){ $res[$v]++; } } if($res['TKPC']){ echo 'TKPC'; } if($res['TKMR']){ echo 'TKMR'; }}fn($str);
运行了没显示?。。。
字符串:
TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56
要求:
1、截取每一个TKPC和TKMR后的连续5位数。(例中的截取出来就应该是TKPC有11090,12098,TKMR有12099,11059)
2、将截取后的数字按照如下条件对比,为真的echo yes。
2.1 TKPC的两组数字,如果有一组小于等于11069的话,ECHO TKPC。
2.1 TKMR的两组数字,如果有一组小于等于10999的话,ECHO TKMR。
非常感谢!
请给详细完整的代码。
我是瓜的,没有命中,但是没显示咯。谢谢了