temp = line.split(",");
if (i < paymentFieldsMapIndex.size()) {
paymentFields.put(paymentFieldsMap.get(next).toString(), temp[i]);
}
此代码将逗号分隔的字符串拆分为子字符串,并使用生成的子字符串填充HashMap值。
某些子字符串值在生成的HashMap中看起来很有趣,看起来是由于令牌中存在逗号。
例如
,“伦敦,英国”,
字符串中的出现在HashMap中,如
Key = key,Value =“LONDON
我认为String split(),如果用双引号括起来,不会拆分包含分隔符的子串吗?
我也试过转发嵌入式逗号,如
,“LONDON \,United Kingdom”,
但HashMap中的字符串看起来像
Key = key,Value =“LONDON \
我错过了什么,或者有什么方法可以解决这个问题吗?感谢。
答案 0 :(得分:7)
“我认为String split(),如果用双引号括起来,不会破坏包含分隔符的子串吗?”
您的推定不正确。 split()
并不关心你传递它的正则表达式。
如果您需要在尊重引号时将其拆分,there are many ways to accomplish that。