我使用(?:\[+\.)?\d+
的正则表达式从网站元素的innertext中提取数字,innertext为$94.99/mo
。
这很有效,我可以创建一个等于105.66
的变量。当我将此正则表达式应用于其中包含不同数字值的innertext时,将选择所有数字值。
e.g。
每月付款总额:94.99美元+ 9.49美元(ASP)= 104.48美元/月(加上 税收)•总拥有成本:104.48美元x 12个月= 1,253.76美元(加上 税务)•租赁服务费用:350.77美元
它找到了所有的价值;
如何修改正则表达式,使其仅找到9.49
价格?
答案 0 :(得分:1)
我会尝试提取这个:+ $9.49
您可以使用以下正则表达式:
@"(?<=\+\s\$)(\d+\.?\d*)
(?<=\+\s\$)
匹配但不包含+
后跟空格,后跟$
(\d+\.?\d*)
匹配并将至少一个数字放在一个组中,然后是可选的.
,后跟任意数字的数字。 + . $
符号是特殊的正则表达式字符,必须使用反斜杠进行转义。