如何拆分字符串以提取其中的坐标数据
坐标字符串拆分解决方案
下述方案无需提前单独移除N/E字符,直接提取数字部分即可,比先删字符再拆分的逻辑更简洁,容错率更高
Python实现
方法1:拆分过滤法(无需引入正则库)
coord_str = "42.262699 N 55.312947 E" # 按空格拆分后过滤掉方向字符 coord_parts = [item for item in coord_str.split() if item not in ("N", "E", "S", "W")] Xcoordinate, Ycoordinate = coord_parts[0], coord_parts[1] # 输出结果:Xcoordinate为"42.262699",Ycoordinate为"55.312947"
方法2:正则提取法(兼容更复杂的格式混乱场景)
import re coord_str = "42.262699 N 55.312947 E" # 直接匹配所有浮点格式的数字串 coord_parts = re.findall(r'\d+\.\d+', coord_str) Xcoordinate, Ycoordinate = coord_parts[0], coord_parts[1]
如果坐标存在西经、南纬的负数场景,可将正则规则调整为r'-?\d+\.\d+'兼容负号
JavaScript实现
const coordStr = "42.262699 N 55.312947 E"; const coordParts = coordStr.match(/\d+\.\d+/g); const Xcoordinate = coordParts[0]; const Ycoordinate = coordParts[1];
内容的提问来源于stack exchange,提问作者Kumza Ion
相关产品推荐
相关产品推荐

