我从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+,?)+\))*
但是我发现这里有大量的空匹配,我怎样才能收紧这个正则表达式以获得更好的匹配?
答案 0 :(得分:2)
您可以通过将最后*
(0或更多)更改为+
(1或更多)来避免空匹配:
(\((-?\d+.\d+\s?-?\d+.\d+,?)+\))+