看了一个cvs文件后,我有很多“引号。至少所有字段都以双引号开始,并以两个引号结尾。还可能发生的是,在中间还存在另外的引号,如以下示例中所示:““cvs”文件中的条目””目前我删除它们:
String raw_string = myString.replace("\"", "");
或
String raw_string = myString.substring(1, mystring.length() -1);
因为它是第一个也是最后一个字符。
什么更有效?还有其他更有效的方法吗?
ttisahbt1#
您可以使用正则表达式查找字符串开头和结尾的所有引号,并将它们替换为""。
""
myString.replaceAll("^\"*|\"*$","");
在ideone上试试。
gdx19jrr2#
你可以用Regex来实现:
String rawString = myString.replaceAll("['\"](.+)['\"]", "$1"); "a text" "another text" "a text with "nested" quotation"
将返回:
a text a greater text a text with "nested" quotation
或者,您可以简单地删除字符串中的所有引号:
String rawString = myString.replaceAll("['\"]+", "");
bjp0bcyl3#
你有没有考虑过使用类似opencsv的东西来读取csv文件?http://opencsv.sourceforge.net/(also在maven central提供)使用库读取csv文件可能会很方便,但它也可能会处理字符串中编码的双引号。
3条答案
按热度按时间ttisahbt1#
您可以使用正则表达式查找字符串开头和结尾的所有引号,并将它们替换为
""
。在ideone上试试。
gdx19jrr2#
你可以用Regex来实现:
将返回:
或者,您可以简单地删除字符串中的所有引号:
bjp0bcyl3#
你有没有考虑过使用类似opencsv的东西来读取csv文件?
http://opencsv.sourceforge.net/
(also在maven central提供)
使用库读取csv文件可能会很方便,但它也可能会处理字符串中编码的双引号。