用于在1或2组参数之间获取文本的表达式?[Javascript]
我有以下资料:用于在1或2组参数之间获取文本的表达式?[Javascript],javascript,regex,Javascript,Regex,我有以下资料: POLYGON((7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531)) POLYGON(7.593955993652344 33.70124816894531,3.10
POLYGON((7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531))
POLYGON(7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531)
\([^()]*\)
我还可以拥有以下内容:
POLYGON((7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531))
POLYGON(7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531)
\([^()]*\)
注意到帕伦斯的差异。我只希望数据位于最内层的父集合中,这样我就可以用逗号分割
我有这样的
让coordFinder=/\([^)]+)\/g代码>但这并不能让我同时得到这两种情况 您可以执行以下操作之一:
POLYGON((7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531))
POLYGON(7.593955993652344 33.70124816894531,3.1060409545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124816894531)
\([^()]*\)
或者,深入到数字、点和逗号
\([.,0-9 ]*\)
更新:添加的代码段(按预期工作)=>使用一组或两组参数匹配两个版本
var poly2=“多边形((7.593955993652344 33.7012481694531,3.10604095545898438 24.7247314453125,8.6434936523437522.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.7012481694531))”,
poly1=“多边形(7.593955993652344 33.7012481694531,3.10604095545898438 24.7247314453125,8.64349365234375 22.052650451660156,14.989128112792969 26.966629028320312,7.593955993652344 33.70124894531)”;
console.log(poly1.match(/\([,0-9]*\)/);
console.log(poly2.match(/\([,0-9]*\)/)代码>
让coordFinder=/.\(.*)/;
var test1='((abc(123456)))';
var test2='(abc)';
log('test1中的结果:'+test1.match(coordFinder)[1]);
log('test2中的结果:'+test2.match(coordFinder)[1])
您需要将(
添加到字符类。\([^()]+)\)