Java 从逗号分隔的字符串中读取=之后的值
我有一个字符串Java 从逗号分隔的字符串中读取=之后的值,java,regex,string,comma,Java,Regex,String,Comma,我有一个字符串first=abc123,second=status,z=3,a=45745,我想得到一个输出abc123,status,345745 我可以尝试将其拆分为多个数组,然后获取值,或者将此字符串放入ArrayList并拆分以获得结果,但我想检查是否有人已经有了一个不涉及大量数组创建或操作的解决方案。就像一个正则表达式,可能会有帮助 ~TIA 这会奏效的。然而,为了使它更好,在=符号之后或之前的字符是否有一些约束 比如说, [a-zA-Z]*?=([a-zA-Z0-9]*) 这
first=abc123,second=status,z=3,a=45745
,我想得到一个输出abc123,status,345745
我可以尝试将其拆分为多个数组,然后获取值,或者将此字符串放入ArrayList并拆分以获得结果,但我想检查是否有人已经有了一个不涉及大量数组创建或操作的解决方案。就像一个正则表达式,可能会有帮助
~TIA
这会奏效的。然而,为了使它更好,在=符号之后或之前的字符是否有一些约束
比如说,
[a-zA-Z]*?=([a-zA-Z0-9]*)
这将只检查是否只有字母在等号的开头,然后是字母/数字,并忽略所有这些。如果不满足这些要求,它将失败
若你们知道某事永远不会有数字,我会建议你们给出答案
注意:您需要的所有内容都将被捕获到regex所称的捕获组中,该捕获组由()表示 描述
此表达式将仅返回键值集的值部分作为值数组
(?@OptimusCrime OP提到了已经尝试过的内容。正在毫无理由地寻找替代方案:)请查看和类。@sᴜʀᴇsʜᴀᴛᴛᴀ - 我认为整个平台是建立在“向我们展示你的尝试,我们会帮助你”的基础上的,而不是“这是我面临的问题,请帮我解决”。我已经编辑了我的答案,请检查编辑。让我们不要打架。我的错,我没有把我试过的密码放进去,但是嘿,这不是犯罪。谢谢大家的帮助。干杯!是的,数字永远不会出现在键中,但值可以是字母数字。@Ninja[a-zA-Z]*?=([a-zA-Z0-9]*)
这将非常适合您。@Ninja请接受以下答案:)
[a-zA-Z]*?=([a-zA-Z0-9]*)
first=abc123,second=status,z=3,a=45745
[0][0] = abc123
[1][0] = status
[2][0] = 3
[3][0] = 45745