2011-10-02 82 views
0

当前使用RegEx学习PHP,我想从网站中提取DAX值。
file_get_contents得到网站的源代码,然后用strip_tags清理了标签。

包含我希望字符串块是这一个: Dax5.502-2,4%PHP正则表达式匹配字符串,末尾带有随机数

,但我需要的只是价值5.502

正则表达式的代码,我至今是'/@Dax\d.\d\d\d[+-]\d,\d[%]$/'

但它不工作。谁能告诉我如何正确地做到这一点。

谢谢:)

回答

2
"/Dax(.*)-/" 

您的结果将是数

+0

把它和你的和Kolinks的答案组合起来:)。 /Dax([0-9].[0-9]{3})-/非常感谢:) – Drunkendo

1

/^Dax([0-9].[0-9]{3})/

随着那(这是你所需要的),你的结果将是多少。

+0

感谢您的回答:)但不工作。线路末端的-2,4%怎么样?他们之间没有空间。 – Drunkendo

0

你并不需要使用正则表达式来解析格式化字符串,sscanfDocs看起来像一个更合适的方式来解析浮动值(Demo):

$str = 'Dax5.502-2,4%'; 

sscanf($str, 'Dax%f', $value); 

echo $value; # 5.502