Php 如何找到前面有标记的数字,然后将该数字设为变量?
我想找到前面有Php 如何找到前面有标记的数字,然后将该数字设为变量?,php,html,regex,Php,Html,Regex,我想找到前面有class=“g-b”>$的所有数字,然后将该数字设为变量 给定如下HTML代码: class="g-b">$195.00</div><span class="ship fee">+$10.00 shipping class=“g-b”>195.00美元+10.00美元运费 现在我想我应该使用regex来查找包含class=“g-b”>$的术语,但当我只需要数字时,我也会获取前面的文本。有办法只取号码吗?我是不是应该再做一次正则表达式来得到这个号码
class=“g-b”>$
的所有数字,然后将该数字设为变量
给定如下HTML代码:
class="g-b">$195.00</div><span class="ship fee">+$10.00 shipping
class=“g-b”>195.00美元+10.00美元运费
现在我想我应该使用regex来查找包含class=“g-b”>$
的术语,但当我只需要数字时,我也会获取前面的文本。有办法只取号码吗?我是不是应该再做一次正则表达式来得到这个号码
regexp = /class=\"g-b\">\$(\d+\.?\d{0,2})\+\$(\d+\.\d{0,2}) /;
x = regexp.exec( text );
将数字保存为数组“x” 从我的交互式php shell(从php-a开始):
php>a='class=“g-b”>195.00美元+10.00美元运费'
php>preg\u match('/class=“g-b”>\$([\d\.]+)/g',$a,$matches);
php>var_dump($matches);
阵列(2){
[0]=>
字符串(19)“class=“g-b”>195.00美元”
[1]=>
字符串(7)“195.00”
}
希望这有帮助。您想使用“向前看”只获取数字: 就像下面。。。 “如果你想得到整数
(?<="g-b">$)\d+
(?$)\d+
'或者如果需要整数和小数点:
(?<="g-b">$)\d+[.]\d+
(?$)\d+[.]\d+
这个数字前面不是也有$
吗?也许从这里开始学习正则表达式:你想要所有的数字吗?还是一个或几个?你想要的输出是什么?
(?<="g-b">$)\d+[.]\d+