用java提取字符串中数字之前的字符串 并去除截取出来的字符串中的所有空格
时间: 2024-03-11 08:50:09 浏览: 216
教你使用java实现去除各种空格
可以使用正则表达式来匹配字符串中的数字之前的字符串,然后使用 String 类的 trim() 方法去除截取出来的字符串中的所有空格。以下是示例代码:
```java
String str = "abc 123";
String regex = "(.*[^\\d])(?=\\d)"; // 匹配数字之前的字符串
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {
String result = matcher.group(1).trim(); // 去除空格
System.out.println(result); // 输出 "abc"
}
```
解释一下正则表达式 `(.*[^\\d])(?=\\d)`:
- `.*` 匹配任意字符零次或多次
- `[^\\d]` 匹配非数字字符
- `(?=\\d)` 正向预查,匹配数字字符之前的字符串,但不包括数字字符本身
因此,这个正则表达式可以匹配数字字符之前的任意字符串。
阅读全文