我刚刚开始弄清正则表达式,希望对理解它有帮助。我一直在使用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/

10-14 18:05