繁体   English   中英

正则表达式匹配首次出现的价格

[英]Regex Match first occurrence of price

我正在使用Nokogiri解析HTML文档。 我试图从div上获取价格,我需要使用正则表达式仅获取部分内容。

我有琴弦

6.956.95

我只需要返回

6.95

另一个例子,我有字符串:

22.9522.95

我只需要

22.95

我的正则表达式技能不是很好,我一直在尝试许多行不通的方法。 谢谢!

如果只需要2个“小数”:

> "22.9522.95"[/^\d+\.\d{2}/]
=> "22.95"

我仍然很好奇您为什么有2个期间的价格表示。

如果您需要由1个或多个数字,后跟一个十进制数和正好两个位数的任何模式组成:

\d+\.\d\d

如果您知道总会有一个小数:

^\d+\.\d{0,2}

也就是说,从字符串的开头选择一个或多个数字,然后选择一个十进制,再选择最多2个数字,它将忽略任何超出此范围的内容。

这适用于任何事物:

"foobarfoobar"[/(.+)\1/,1]
#=> "foobar"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM