如何在正则表达式Java中使用条件将字符串分隔为','

时间:2019-05-27 10:32:45

标签: regex

我想使用带有','作为条件的定界符在Java中使用正则表达式来拆分字符串。如果下一个','之前只有一个'='字符,则它将是一个定界符。

ex:

    String test = "APPLICATION:1:1=SECTOR,APPLICATION:2:1=INDUSTRY,DESCRIPT:1:1=Sec,tor,DESCRIPT:2:1=Industry,"
    String [] testRegex = test.split(????)

testRegex的值应为:

     APPLICATION:1:1=SECTOR
     APPLICATION:2:1=INDUSTRY
     DESCRIPT:1:1=Sec,tor
     DESCRIPT:2:1=Industry

对正则表达式有什么想法吗?到目前为止,我还没有找到任何示例:(

1 个答案:

答案 0 :(得分:1)

如果分隔符逗号后应包含等号的部分,则可以使用正向超前。

String parts[] = yourString.split(",(?=[^,]*=)");

(?=)用于正向超前。它不会用于拆分,它只是一个断言,将被从比赛中丢弃。