这是我的字符串:“N / A - -0.09%”(包括双引号和我要解剖的字符串的一部分)
这是我的代码:
$url = 'abc123.php';
$data = file_get_contents($url); //$data contains "N/A - -0.09%" (the string to parse)
$regex = '/""/';
preg_match($regex,$data,$match);
var_dump($match);
如何在第一个连字符后但在%符号之前隔离所有内容?
我知道这个字符串在前面总是有“”N / A - “,而我只想用负号来提取数字,如果它是负数。
我想将数字-0.09分配给变量。数量可能是正数或负数。如果它是积极的,那么就没有爆炸,例如。 0.123。如果它是否定的,除了第一个之外还会有第二个连字符,例如。 -2.5。
请帮我制定正则表达式部分,将-0.09隔离成一个变量,比如$ number。谢谢!
答案 0 :(得分:1)
我不会在这里使用正则表达式,我只删除两个引号(使用str_replace()替换"
除外),然后将字符串拆分为单词(使用explode()使用''作为分隔符),然后使用array_pop()获取最后一个“单词”。
url = 'abc123.php';
$data = file_get_contents($url); //$data contains "N/A - -0.09%" (the string to parse)
$match = array_pop(explode(' ', str_replace("\"", '', $data)));
echo $match . "\n";