如何从String变量中提取特定字符串

时间:2013-08-31 08:06:10

标签: java string

我正在获取一个字符串,其中包含文件名,其中包括ex扩展名,如下所示..

 String s = "abcdf.dat";// Now as shown file abcde having a .dat extension 

现在我想将文件名只存储在另一个字符串中而不是扩展名中,所以我想以这种格式存储  例如 -

 String p= "abcdf"; //only file name please advise how to achieve this

6 个答案:

答案 0 :(得分:1)

您可以使用split(String regex)获取名称。

String fileName = "abcdf.dat";
String name = fileName.split("\\.")[0]; // abcdf
String ext = fileName.split("\\.")[1]; // dat

注意: "\\."是正则表达式。

答案 1 :(得分:1)

使用String#split()方法。

String abcdf = "abcdf.dat";
String result= abcdf.split("\\.")[0];

.是一个元字符,所以你需要在拆分之前将其转义。

答案 2 :(得分:1)

您可以使用 -

String filename = s.substring(0, s.lastIndexOf("."));
  

由于文件名可以包含多个点(。),因此直到最后一个点   将是文件名。

答案 3 :(得分:0)

String s = "abcdf.dat";

String start = StringUtils.substringBefore(s, "."); // returns "abcdf"

答案 4 :(得分:0)

String p = s.substring(0, s.lastIndexOf("."));

答案 5 :(得分:0)

试试这个

 String fileName = "abcdf.dat";

 String name = fileName.split(java.util.regex.Pattern.quote("."))[0];
 String ext = fileName.split(java.util.regex.Pattern.quote("."))[1];