使用正则表达式将WKT转换为GeoJSON

时间:2014-09-05 13:05:24

标签: java mysql regex wkt

我从WKT获取mysql数据:

  POLYGON((148.798828125 -34.37971258046219,
           148.86474609375 -34.10270799317487,
           149.23828125 -34.28899186503752,
           149.2108154296875 -34.601563177240884,
           148.853759765625 -34.51560953848203,
           148.5186767578125 -34.68291096793205,
           148.38134765625 -34.542762387234845,
           148.798828125 -34.37971258046219))

我使用this regex获取paths中的所有polygon

   (\((-?\d+.\d+\s?-?\d+.\d+,?)+\))*

但是我发现这里有大量的空匹配,我怎样才能收紧这个正则表达式以获得更好的匹配?

1 个答案:

答案 0 :(得分:2)

您可以通过将最后*(0或更多)更改为+(1或更多)来避免空匹配:

(\((-?\d+.\d+\s?-?\d+.\d+,?)+\))+