我将html页面解析为纯文本,以便查找和获取数值。在整个html混乱中,我需要找到一个像这样的字符串:
C) Debiti33.197.431,90I - Di finanziamento
我需要的数字33.197.431,90(这个数字将改变每一个html解析请求。
是否有任何正则表达式来实现这一点?例如:
STARTS WITH 'C) Debiti' ENDS WITH 'I - Di finanziamento' GETS the middle string that can be whatever.
每当我尝试,我得到空结果…不太了解正则表达式。你能帮帮我吗?非常感谢。
你可以试试下面的正则表达式,
^C') Debiti'K.*?(?=I - Di finanziamento$)
演示PHP代码应该是,
<?php
$mystring = "C) Debiti33.197.431,90I - Di finanziamento";
$regex = '~^C') Debiti'K.*?(?=I - Di finanziamento$)~';
if (preg_match($regex, $mystring, $m)) {
$yourmatch = $m[0];
echo $yourmatch;
}
?> //=> 33.197.431,90
应该可以。阅读"想偷懒吗?"三思而行。
(?<='bC') Debiti)['d.,]+(?=I - Di finanziamento'b)
这里是demo
示例代码:
$re = "/(?<=''bC'') Debiti)[''d.,]+(?=I - Di finanziamento''b)/i";
$str = "C) Debiti33.197.431,90I - Di finanziamento";
preg_match($re, $str, $matches);