相关疑难解决方法(0)

Java:拆分以逗号分隔的字符串,但忽略引号中的逗号

我有一个模糊的字符串:

foo,bar,c;qual="baz,blurb",d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)

我想用逗号分割 - 但我需要在引号中忽略逗号.我怎样才能做到这一点?好像正则表达式方法失败了; 我想我可以在看到引号时手动扫描并进入不同的模式,但是使用预先存在的库会更好.(编辑:我想我的意思是已经是JDK的一部分或已经是Apache Commons等常用库的一部分的库.)

上面的字符串应该分成:

foo
bar
c;qual="baz,blurb"
d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)

注意:这不是CSV文件,它是包含在具有更大整体结构的文件中的单个字符串

java regex string

238
推荐指数
4
解决办法
18万
查看次数

关于Java String Manipulation

我在split命令之后将字符串"MO""RET"存储在items[1]数组中.在它存储之后,我在这个字符串上做一个替换,它取代了所有的双引号.但我希望它存储为MO"RET.我该怎么做.在我使用split命令处理的csv文件中重复文本字段内容中的双引号(例如:此帐户是""large""一个").所以我想保留字符串中间的两个引号之一,如果它如果存在则重复并忽略最终引号.我该怎么做?

String items[] = line.split(",(?=([^\"]*\"[^\"]*\")*[^\"]*$)");
items[1] has "MO""RET"
String recordType = items[1].replaceAll("\"","");
Run Code Online (Sandbox Code Playgroud)

在这个rec​​ordType之后MORET 我希望它有MO"RET

java string replaceall

2
推荐指数
1
解决办法
1476
查看次数

标签 统计

java ×2

string ×2

regex ×1

replaceall ×1