【问题标题】:Who to make split for comma, but not for quoted commas in Java [duplicate]谁为逗号进行拆分,但不是为Java中的引号引起来的逗号[重复]
【发布时间】:2015-10-27 18:38:43
【问题描述】:

我需要对字符串上的逗号进行拆分。 但我需要忽略文本字段中的逗号

输入示例

'Field1','Field2','Field3, this field, has, multiples commas','Field4'

我想要的输出:

'Field1'
'Field2'
'Field3, this field, has, multiples commas'
'Field4'

我得到的输出:

'Field1'
'Field2'
'Field3
 this field,
 has,
 multiples commas'
'Field4'

有人可以帮我吗?

【问题讨论】:

    标签: java regex split


    【解决方案1】:
    ,(?=(?:[^']*'[^']*')*[^']*$)
    

    你可以在这个上拆分。查看演示。

    https://regex101.com/r/cD5jK1/10

    【讨论】:

    • 这个正则表达式适用于演示......但是当我把它放在 split() 方法上时,我得到了 java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 8.
    • 现在它在 field3 内部拆分,而不是在 field3 和 field4 之间 =(
    • @Roqueirow 查看演示。它按预期工作
    猜你喜欢
    • 1970-01-01
    • 2010-12-17
    • 2014-10-19
    • 2020-07-01
    • 2016-03-08
    • 1970-01-01
    • 1970-01-01
    • 2016-03-19
    相关资源
    最近更新 更多