当前位置:Gxlcms > PHP教程 > smarty正则

smarty正则

时间:2021-07-01 10:21:17 帮助过:6人阅读

数据格式如下 23424-234234,怎么通过‘-’取得这个字符串后面的数值(数字位数是不定的),正则是真不会用


回复讨论(解决方案)

用php处理好了再传给smary 就是了。

这个用explode就行了。不是碰到什么都用正则

lz目的不就是要截取'-'之后的字符串吗
substr 就可以截取,或者二楼的explode也可以!

$a='23424-234234222222222';$b = substr($a,6);print_r ($b);

结果 234234222222222

或者
$a='23424-234234222222222';$b = explode('-',$a);print_r ($b);

结果 Array ( [0] => 23424 [1] => 234234222222222 )
然后
print_r($b[1]);

lz目的不就是要截取'-'之后的字符串吗
substr 就可以截取,或者二楼的explode也可以!


PHP code
?



1234

$a='23424-234234222222222'; $b = substr($a,6); print_r ($b);
结果 234234222222222

或者


PHP code
?



123
……
在smarty模板里唉,不是php页面。

用php处理好了再传给smary 就是了。
用php就有点乱了,应为牵涉到多个数组

引用 3 楼 nzr_dream 的回复:
lz目的不就是要截取'-'之后的字符串吗
substr 就可以截取,或者二楼的explode也可以!


PHP code
?



1234

$a='23424-234234222222222'; $b = substr($a,6); print_r ($b);
结果 234234222222222

或者


PHP code
?



123
……

在smarty模板里唉,不是php页面。
那就用smarty中的截取字符串函数啊 truncate

{$s|regex_replace:"/\d+-/":""}

smarty 本身是由php编写的模版 不行就写个截字符函数放到smarty函数库目录,一样好使
能不用正则就别用正则

人气教程排行