java取出括号内的所有数据
时间: 2023-05-04 21:02:15 浏览: 64
在Java中取出括号内的所有数据可以使用正则表达式的方式实现。可以使用java.util.regex包中的Pattern和Matcher类。具体步骤如下:
1. 定义一个正则表达式,用于匹配括号内的所有内容,例如:\((.*?)\)
2. 使用Pattern.compile方法将正则表达式编译为一个Pattern对象。
3. 使用Matcher类对目标字符串进行匹配,并提取出括号内的所有数据。
4. 循环遍历所有匹配结果,获取括号内的数据,可以使用Matcher.group方法实现。
以下是一个简单的示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String[] args) {
String str = "Hello (world) from (Java)";
Pattern pattern= Pattern.compile("\\((.*?)\\)"); // 定义正则表达式
Matcher matcher = pattern.matcher(str); // 匹配目标字符串
while (matcher.find()) {
String match = matcher.group(1); // 获取括号内的数据
System.out.println(match); // 输出匹配结果
}
}
}
```
以上代码将输出以下结果:
```
world
Java
```
这里使用了group(1)方法,是因为group(0)返回整个匹配的字符串,而我们只需要括号内的数据。如果需要多个括号内的数据,也可以使用group(2)、group(3)等方法获取。