我需要协助处理 PHP 正则表达式。如果在字符串中找到某个字符后面的数字,请获取该数字并在应用数学运算后进行替换,例如货币转换。
我使用了这个正则表达式 https://regex101.com/r/KhoaKU/1 ,但它不正确。我想要匹配所有数字,而不仅仅是 40,因为还有 20.00、9.95 等等。我正在尝试获取所有这些数字并将其进行转换。
我使用了这个正则表达式 https://regex101.com/r/KhoaKU/1 ,但它不正确。我想要匹配所有数字,而不仅仅是 40,因为还有 20.00、9.95 等等。我正在尝试获取所有这些数字并将其进行转换。
function simpleConvert($from,$to,$amount)
{
$content = file_get_contents('https://www.google.com/finance/converter?a='.$amount.'&from='.$from.'&to='.$to);
$doc = new DOMDocument;
@$doc->loadHTML($content);
$xpath = new DOMXpath($doc);
$result = $xpath->query('//*[@id="currency_converter_result"]/span')->item(0)->nodeValue;
return $result;
}
$pattern_new = '/([^\?]*)AUD (\d*)/';
if ( preg_match ($pattern_new, $content) )
{
$has_matches = preg_match($pattern_new, $content);
print_r($has_matches);
echo simpleConvert("AUD","USD",$has_matches);
}
40
吗?你的正则表达式正确吗? - Wiktor StribiżewAUD ([\d.]+)
的东西。这将包括点.
。并且你想要使用preg_match_all()
来获取所有匹配项。 - jeroen