Я хочу поймать дробное число с помощью регулярных выражений.Но я до сих пор не нашел ни намека.
Например, здесь, в этом предложении, как я могу поймать дробное число?
5 декабря следующего года в 6 часов утра Марс был замечен в 9 ° 19 ° 'Весов, на широте 1 ° 53½' северной широты, Солнце в 23 ° Стрельца ^ 5
Я написал код для захвата долготы, но я могу изменить его, чтобы поймать также долготу, включая номер дроби, вот код
label = "LONG"
texts = sents
regex_patterns = [
re.compile(r"\d{1,3}\s?°\s?\d{1,2}\s?[\'|’]\s?\d{1,2}\s?[\"|”|“]\s?[A-Z][a-z.]+" #LONG in format
"|\d{1,3}\s?°\s?\d{1,2}\s?[\'|’]\s?\s?[A-Z][a-z.]+"
"|\d{1,3}\s?°\s?\d{1,2}\s?[\'|’]\s?\d{1,2}\s?[\"|”|“]"
"|\d{1,3}\s?°\s?\d{1,2}\s?[\'|’]"
"|\d{1,3}\s?°\s?[A-Z][a-z.]+")
]
examples = []
for text in texts:
for expression in regex_patterns:
spans = []
for match in re.finditer(expression, text):
start, end = match.span()
span = {"start": start, "end": end, "label": label}
spans.append(span)
task = {"text": text, "spans": spans}
examples.append(task)