gpt4 book ai didi

java - 正则表达式删除井号和双逗号java csv

转载 作者:行者123 更新时间:2023-12-01 17:50:44 27 4
gpt4 key购买 nike

我正在使用一个 CSV 文件,该文件在某些​​地方有多个逗号和井号。我的问题是如何删除多个逗号和井号,同时在字段之间保留一个逗号。

我正在进行的这项任务的一部分是,仅使用 java 而没有外部库来对 csv 文件进行排序,并按价格对数组进行排序。我要输入一个数字作为输入参数并返回该行数,按价格排序。

我目前拥有大约 1000 行数据,如下所示:

18,5 Ramsey Lane,See,Amerighi,samerighih@trellian.com,,£307018.48,

我需要删除双逗号和井号,但我一生都无法让它发挥作用。

这是我用于正则表达式的行。

         String currentLine = line.replaceAll("[,{2}|£]", "");

这会输出一行,如下所示:

100086 Norway Maple WayMadelleGeorgeotmgeorgeotrr@hao13.com417175.60

代码的一大块看起来像这样,但它绝不是即将完成:

  public String[] getTopProperties(int n){
String[] properties = new String[n];
String file = "data.csv";
String line = "";
String splitBy = ",";

try (BufferedReader br = new BufferedReader(new FileReader(file))) {

while ((line = br.readLine()) != null) {

String currentLine = line.replaceAll("[,{2}|£]", "");

System.out.println("Current line is: " + currentLine);
String[] user = currentLine.split(splitBy);
}
} catch (IOException e) {
e.printStackTrace();
}

return properties;
}

问题是现在删除了所有逗号,并且价格和双逗号原来所在的位置现在连接起来了。可以使用一些帮助来查找一些在每个字段之间保留单个逗号的正则表达式,以及删除井号。

最佳答案

您可以通过将 CSV 文件解析为二维数组并忽略由双逗号产生的空列来简化此操作。然后解析货币列就很简单:只需忽略第一个字符即可。

关于java - 正则表达式删除井号和双逗号java csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50419207/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com