如何查找文本中的坐标?

问题描述 投票:0回答:1

这是我的一些文字:

`巴勒斯坦帕尔希伯伦省31°31′27″N 35°6′32″E / 31.52417°N 35.10889°E // 31.52417; 35.10889(希伯伦/哈利勒旧城区) 文化:(ii)、(iv)、(vi) 20.6 (51) 2017年 2017–

[51]

敖德萨乌克兰敖德萨46°29′11.22″N 30°44′29.81″E / 46.4864500°N 30.7416139°E / 4 46.4864500; 30.7416139(敖德萨历史中心) 文化:(ii)、(iv) — 2023年 2023年– 俄乌战争 [52][53] ` 我想提取例如:46.4864500°N 30.7416139°E 和 1.52417°N 35.10889°E

import re

text = 'UzbQashqadaryo Region, Uzbekistan39°3′0″N 66°50′0″E / 39.05000°N 66.83333°E /    39.05000; 66.83333 (Historic Centre of Shakhrisyabz)
Cultural:(iii), (iv)
240 (590)
2000
2016–
Destruction of buildings in its medieval neighbourhoods and continuing urban development.
[55][56]

AutVienna,  Austria48°12′N 16°22′E / 48.200°N 16.367°E / 48.200; 16.367 (Vien   nna)
Cultural:(ii), (iv), (vi)
371 (920)
2001
2017–
New high-rise projects
[57]

YemAl Hudaydah, Yemen14°12′N 43°19′E / 14.200°N 43.317°E / 14.200; 43.317 (Hi   istoric Town of Zabīd)
Cultural:(ii), (iv), (vi)'

# Definir el patrón de expresión regular para encontrar texto entre "//"
pattern = re.compile(r"[a-zA-Z]+/{1}\s{1}")

# Encontrar todas las coincidencias del patrón en el texto del párrafo
matches = pattern.findall(text)

# Imprimir las coincidencias encontradas
print(matches)
                     

我尝试使用这段代码,获取坐标但什么也没有,我该怎么办?

python text-extraction
1个回答
0
投票

我相信这就是您正在寻找的:

pattern = re.compile(r"\d+\.\d+°[NS]\s\d+\.\d+°[EW]")

输出:

['39.05000°N 66.83333°E', '48.200°N 16.367°E', '14.200°N 43.317°E']
© www.soinside.com 2019 - 2024. All rights reserved.