gpt4 book ai didi

java - java中的正则表达式

转载 作者:行者123 更新时间:2023-12-01 15:56:55 25 4
gpt4 key购买 nike

我有一个问题,我需要标记我的字符串(使用 java 代码),以便将其拆分为字符串数组。该数组中的每个标记应该是单词、数字或形式的维度(23 x 34 x 56 等),我尝试将其编码为:

String[] split_text = text.split("\\s | (\\d{3},)*\\d{3}([.]\\d)* x (\\d{3},)*\\d{3}([.]\\d)* | \\d*([.]\\d)* x \\d*([.]\\d)*");

但是,这会产生语法错误。谁能告诉我如何使用正则表达式来做到这一点,以及我在java中表达正则表达式的方式是否存在问题?

最佳答案

要匹配任意一对带有点或逗号以及中间有 x 的数字,您可以执行以下操作:

(\d*(?:[.,]\d+)* x \d*(?:[.,]\d+)*)

或者对于成对和三元组:

(\d*(?:[.,]\d+)*(?: x \d*(?:[.,]\d+)*){1,2})

也许这就是你的表达方式:

((?:\d*(?:[.,]\d+)*(?: x \d*(?:[.,]\d+)*){1,2})|\s|\w+)

请参见此处:http://rubular.com/r/snAiI7GMT7 - 一个很棒的测试网站。

您可能需要将 \w 替换为 \p{L} 以覆盖 java 中的所有 unicode 单词。

关于java - java中的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4885311/

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