猿问

【已解决】php正则表达式问题

【已解决】
echo'';
$pa='%

(.*?)

%sim';
preg_match($pa,trim($message),$arr);
if(strpos("Welcomeback",$message)){
preg_match('/.\d{1,}.\d{1,2}/',$arr[1],$arr);
}else{
preg_match('/.\d{1,}.\d{1,2}/',$arr[1],$arr);
}
echo($arr[0]);
===================================================================
多语言网站,需要提取$299.00,其中$不确定,因为有可能是¥,£等符号,
可以确定的是$299.00前都包含一个空格,小数点后都有两位数,
换句话说,需要从:
您的账户有未付账单金额$299.00,请尽快完成付款。
或者
Youraccounthasanoutstandingbalanceof$299.00.Pleasemakeapaymentatyourearliestconvenience.
提取到$299.00。
中文显示:
×
欢迎回来,陶!

您的账户有未付账单金额$299.00,请尽快完成付款。

进行付款

×
Welcomeback,陶!

Youraccounthasanoutstandingbalanceof$299.00.Pleasemakeapaymentatyourearliestconvenience.

MakePayment

慕码人2483693
浏览 318回答 2
2回答

猛跑小猪

从代码来看,这段代码的内容除了名称和金额之外其他的应该是不变的内容,这样的话就比较好办了。直接去匹配金额/\s(.\d+\.\d{2})/g就是了,前提是针对该段代码,如果是整个页面的话,需要把匹配局限到这段代码中来。。

芜湖不芜

echo'';$pa='%(.*?)%sim';preg_match($pa,trim($message),$arr);if(strpos("Welcomeback",$message)){preg_match('/.\d{1,}.\d{1,2}/',$arr[1],$arr);}else{preg_match('/.\d{1,}.\d{1,2}/',$arr[1],$arr);}echo($arr[0]);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答