Я хочу извлечь некоторые значения широты и долготы из файла KML, который выглядит как:Трудности с RegEx
<coordinates>0.197118,48.003719,0.000000</coordinates>
// ...
<coordinates>
0.197120,48.003719,0.000000
0.197060,48.003792,0.000000
0.198390,48.004059,0.000000
</coordinates>
// ...
<coordinates>0.196763,48.003162,0.000000</coordinates>
Таким образом, вы можете увидеть в тексте формат координат:
(space*)longitude,latitude,altitude\n // or
(space*)<coordinates>longitude,latitude,altitude</coordinates>\n
Таким образом, чтобы поймать широты, это нормально, я совпадения:
@".*?,(.*?),.*?$" // matching index 1
И долготы, я использовал шаблон:
@" * (<coordinates>)? (.*?),(.*?),(.*?)$" // matching index 2
Я пробовал много вещей, включая этот последний образец, но я всегда получаю как спички:
"<coordinates>0.197118",
"0.197120"
"0.197060"
"0.198390"
"<coordinates>0.196763"
И вы его получили: я не хочу <coordinates>
.
Что случилось в @" * (<coordinates>)? (.*?),(.*?),(.*?)$"
?
Спасибо.
dont использовать regex для этого. используйте синтаксический анализатор xml. – vikingosegundo
или каркас kml http://kmlframework.com – vikingosegundo
Что делать, если я хочу использовать RegEx? Я думаю, что для меня это будет быстрее (в моем случае), я просто думаю, что там что-то отсутствует. – Lucien