Java字符串格式正则表达式模式

我是Regex和Java String格式化的新手,我想格式化此字符串:

String text = "[(0 : 1 :0), (2 : 11 : 1), (2 : 12 : 1)]";

数字是点坐标x,y,z,我希望能够将方括号内的值分配给对象-因此我需要隔离它们,然后仅获取数字值。有人可以用正则表达式帮助我实现这一目标吗?我列出了我的问题的一些规格。

  • 文本值中的点数变化很大-可以是0到n。
  • 我希望能够遍历字符串以正确地分配每个坐标(x,y,z),因此我需要使用括号()来指示点的终点和起点,并使用:来指示坐标的终点和起点。

我正在寻找一种可以帮助我实现这一目标的模式-我查询了诸如format,Pattern等类以及诸如replaceAll之类的方法,但我确实停留在使用哪种模式以能够以一种可识别方式进行迭代的方式上正确地进行坐标-您可以看到坐标可以是两位数,因此它必须采用:之后的所有数字。

评论