String DeviceName = "Black USB (H:)";
如何分离“Black USB”并从JAVA中的字符串中删除(H :),我需要在其他类的方法中进一步传递。
答案 0 :(得分:7)
对于这样一个简单的问题,没有必要使用正则表达式或拆分操作,这将是过度的。试试这个:
String name = deviceName.substring(0, deviceName.indexOf('(')-1);
这是最简单的方法,它适用于Windows中设备名称的一般情况 - 事先不知道设备的实际名称。
答案 1 :(得分:1)
实现你想要的很多方法(正则表达式,StringTokenizer,String的split())。一个是:
String[] splitArray = deviceName.split("Black USB");
假设它只是用于此字符串(“黑色USB”可以硬编码)。
答案 2 :(得分:1)
我会使用正则表达式。如果您需要捕获不同的格式,请稍微修改一下:
String s = "Black USB (H:)";
Pattern p = Pattern.compile("(.*) \\((.*)\\)");
Matcher m = p.matches(s);
if (m.matches()) {
System.out.println(m.group(1));
System.out.println(m.group(2));
} else {
System.out.prinln("No match");
}