2011-11-02 96 views
0

浮点数我有这些字符串:查找字符串用PHP

$txt1 = "8,742 MW"; 
$txt2 = "7,750 KW"; 
$txt2 = "2,350 GW"; 

我需要一个正则表达式来查找有效的浮点数到这些串......我该怎么办呢? 谢谢。使用

(\d+(?:,\d+)?) 

而且你可以将它转换成float:

回答

1

要匹配浮点值尝试以下的正则表达式

$floatVal = (float) "8,742 MW"; 
+0

'如果(的preg_match( “(\ d +(:?,\ d +))”,$ TXT1,$匹配)){ $值= $匹配[0]; print“value = $ value \ n”; }' –

+0

$ floatVal =(float)“8,742MW”; //如果你用'。'代替','它将会起作用。 – Bao

1

这一次应该这样做:

[-+]?([0-9]*\,)?[0-9]+ 

或者,如果您想通过将逗号“,”作为点“。”直接转换为浮点数,那么我认为您应该将您的语言环境设置为法国一个如所述here

setLocale(LC_ALL, 'fr_BE.UTF-8');