我正在编写一些代码,期望接收html块,其中总是包含以下内容:
var code = [39.474, -0.3548];
方括号之间的值总是不同的。我如何使用php提取方括号之间的值?
我应该指出,我正在解析一个HTML块到php,其中也包括js
使用像
这样的正则表达式preg_match_all('/''[(.*?)'']/', $your_string, $matches, PREG_SET_ORDER);
数组$matches[1]
将包含您的值。
如果Javascript数组格式将保持不变(总是两个组件和','后面的空格),您可以使用/(?:'[)(.*)[,][ ](.*)(?:'])/
regex在php中提取它们:
$line = 'var code = [39.474, -0.3548];';
preg_match("/(?:'[)(.*)[,][ ](.*)(?:'])/", $line, $output_array);
print_r ($output_array);
结果将是
array(
0 => [39.474, -0.3548]
1 => 39.474
2 => -0.3548
)
一个简单的解决方案是:
- 替换"["answers"]"
-
explosion by ","
$a = "[39.474, -0.3548]"; $b = str_replace("]", "", str_replace("[", "", $a)); $c = explode(",", $b); print_r($c);
Array ( [0] => 39.474 [1] => -0.3548 )