Meysam Meysam - 6 months ago 9
Python Question

Why is this regex not matched in python

I need to find "

7.1/10
" in "
7.1/10&nb
" with the following regex:

\d{1}\.?\d{0,2}\/10


But the following code does not match anything:

rating= "7.1/10&nb"
p = re.compile(re.escape("\d{1}\.?\d{0,2}\/10"))
m = p.match(rating)
if m:
print("rating: {}".format(m.group()))
else:
print("no match found in {}".format(rating))


What's the problem with my code?

Answer

Change only one line in your code.

p = re.compile(re.escape("\d{1}\.?\d{0,2}\/10")) to re.compile(r"\d{1}\.?\d{0,2}\/10")

It will work smoothly.