我刚刚开始弄清正则表达式,希望对理解它有帮助。我一直在使用this来帮助我入门,但是在弄清楚它时仍然遇到一些麻烦。
我正在尝试做的是这段文字:
<td>8.54/10 over 190 reviews</td>
并拉出“ 8.54”,基本上是第一个“>”和“ /”之间的所有内容
使用我的菜鸟技巧,我想到了:[0-9]。[0-9] [0-9],它将与8.54相匹配,并且可以处理所有10.00,但我确实需要考虑的问题。
谁能帮助我完善我的表达方式以适用于最后一种情况?
最佳答案
使用量词。
您需要一个或多个数字,然后是一个点,然后是一个或多个数字。也可以将数字写为\d
,“一个或多个”量词为+
。
点必须转义,因为它是正则表达式元字符,表示“任何字符”。因此,您的正则表达式应为:
\d+\.\d+
现在,请注意量词仅适用于原子。字符类(
[...]
),补充字符类([^...]
)和特殊字符类(\d
,\w
...)是原子,但是,如果您想将量词应用于一个以上的简单原子,您需要使用分组运算符()
对这些原子进行分组。即,(ab)+
将查找ab
中的一个或多个。关于python - 一些正则表达式的东西,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8577564/