我有一个带有“address.xls”的excel文件,它只包含一个列“a”,行中的值为美国地址。
A
_________________________________________
NO FIXED ADDRESS1, TALLAHASSEE, FL 32301
NO FIXED ADDRESS2, TALLAHASSEE, FL 32303
NO FIXED ADDRESS, SCOTTSDALE, AZ 85258
NO FIXED ADDRESS, AR
邮编:46240-7670,印第安纳波利斯Keystone Xing 8900
我想提取的状态代码只作为一个输出字符串,而不重复重复。
["FL","AZ","AR","IN"]
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
</dependency>
</dependencies>
导入org.apache.poi.hssf.usermodel.hssfsheet;导入org.apache.poi.hssf.usermodel.hssfworkbook;导入org.apache.poi.ss.usermodel.cell;导入org.apache.poi.ss.usermodel.row;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
/**
* @author
* Waqas Ahmed
*/
public class StateParser
{
public static void main(String args[]) throws IOException
{
FileInputStream fis=new FileInputStream(new File("C:\\files\\address.xls"));
HSSFWorkbook wb=new HSSFWorkbook(fis);
HSSFSheet sheet=wb.getSheetAt(0);
int index = 1;
Set<String> statesSet = new HashSet<>();
for(Row row: sheet) {
for(Cell cell: row) {
String[] arr = cell.getStringCellValue().split(",");
String state = "";
if(arr.length <= 2){
state = arr[1].substring(0,3);
}else{
state = arr[2].substring(0,3);
}
System.out.print("Row# " + index + " = " + cell.getStringCellValue() + " --------------->> state: " + state);
statesSet.add("\""+state.trim()+"\"");
state = "";
index++;
}
System.out.println();
}
System.out.println("-------------------------------------------");
System.out.println(statesSet.toString().trim());
}
}
在位置“C:\files\address.xls”处添加“address.xls”文件或更改Java文件中的目录路径。
运行程序
输出将打印在控制台中
[“CO”、“NY”、“MS”、“DE”、“HI”、“WV”、“NJ”、“NH”、“TN”、“OH”、“MD”、“SC”、“VA”、“Al”、“WA”、“NV”、“FL”、“In”、“TX”、“IL”、“OR”、“MN”、“Ca”、“MI”、“Ga”、“Az”、“Me”、“Ri”、“NC”、“La”、“MA”、“Wi”、“PA”、“CT”、“Ar”]
问题内容: 我有以下字符串: 我怎么只能选择?第三个逗号之前的字符串长度可能会有所不同,并且内可能会有逗号。 我想要尽可能简洁的代码,即最好是1行代码,没有循环。但是,请随时发布您想到的任何解决方案。 问题答案: 我只是想出了一些可行的方法:
问题内容: 我正在使用循环从数据库中获取值,我的结果是: 我想要这样: 我想在循环的最后一个值后删除逗号。 问题答案: 使用功能: 第二个参数指示要删除的字符。
问题内容: 我有一个看起来像这样的字符串: 我要返回的是在每个第三个逗号后被拆分的,因此结果如下所示: 我发现了类似的功能,但它们不会以逗号分隔n个。 问题答案: 您可以尝试将方法与正则表达式一起使用 演示版 输出: 说明 表示一个数字,与[0-9]相同,例如或 表示一个或多个数字,例如或 表示一个或多个后跟逗号的数字,例如或 会接受三个数字,并且它们之间用逗号隔开 表示最后一个匹配项,或者如果没
问题内容: 我已经在堆栈溢出中给出的答案的帮助下更正了代码。我想循环通过逗号分隔的Id字符串,但无法这样做。下面给出的过程仅更新第一条记录,而不更新其他记录。需要进行哪些更正,才能循环通过逗号分隔的字符串。这是我的SP的代码 该代码如该帖子的答案中所提供。 我尝试使用find_in_set()函数,但仅当我从头开始传递id时才起作用,而如果我随机传递id则不起作用。这是我的表格脚本 int(11)
我的代码在命令中没有传递任何逗号,运行得非常好。我不确定如何更改我的代码来处理命令中的逗号。 这就是我现在拥有的: 当我跑的时候
问题内容: 我从数据库中得到了String,它有多个逗号()。我想删除 最后一个逗号, 但实际上找不到一种简单的方法。 我有的: 我想要的是: 问题答案: 要删除紧随字符串结尾的部分,您可以执行以下操作: 相对于/ solution,它需要对此类情况进行特殊处理,这可以优雅地处理空列表(空字符串)。 示例代码: 注意: 由于存在有关零件的一些注释和建议的编辑:表达式应与要删除的尾部零件匹配。 如果