gpt4 book ai didi

java - 如何修改读取 vector 的正则表达式来读取矩阵?

转载 作者:行者123 更新时间:2023-12-02 01:47:35 24 4
gpt4 key购买 nike

我有以下正则表达式,可以读取任意大小的数组,例如 {1.0, 2, 3, 5.4}:

"\\{\\s*((-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+(\\s*,\\s*(-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+)*\\s*)?\\}"

如何修改它,使其能够读取任何维度的矩阵,例如:{{1.2, 3,4},{2,3.4,3}} 等?

最佳答案

我认为您只需要添加外部大括号并使用可选逗号重复现有模式:字首: {(。 外部花括号和左括号,以便可以重复现有的正则表达式。

"\\{\\s*((-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+(\\s*,\\s*(-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+)*\\s*)?\\}"

附加:,?)+}。 逗号 - 问号使其可选 然后关闭括号并允许重复 1 次或多次 最后是结束的外花括号

将其放在一起并添加所需的转义以获得:

"\\{(\\{\\s*((-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+(\\s*,\\s*(-?\\b\\d+(?:\\.\\d+)?(?:/\\d+(?:\\.\\d+)?)?\\b)+)*\\s*)?\\},?)+\\}"

关于java - 如何修改读取 vector 的正则表达式来读取矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53545817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com