Java 使用正则表达式将字符串拆分为多个字符串
我正在做一项任务来解析cucumber特性字符串,我需要将字符串拆分为5个,如下所示Java 使用正则表达式将字符串拆分为多个字符串,java,regex,Java,Regex,我正在做一项任务来解析cucumber特性字符串,我需要将字符串拆分为5个,如下所示 String data = "calls 'create' using 'POST' on some uri"; String dataArray[] = {"calls '","create","' using '","POST", "' on some uri"}; 我多次实现了基本的拆分功能(没有任何非常繁琐的正则表达式),以便将数据生成到以下内容中 String data = "calls 'cre
String data = "calls 'create' using 'POST' on some uri";
String dataArray[] = {"calls '","create","' using '","POST", "' on some uri"};
我多次实现了基本的拆分功能(没有任何非常繁琐的正则表达式),以便将数据生成到以下内容中
String data = "calls 'create' using 'POST' on some uri";
String dataArray[] = {"calls '","create","' using '","POST", "' on some uri"};
我想获得
dataArray[1]
和dataArray[3]
的名称。是否有一种方法可以使用regex和split或其他直接方法生成上述数据数组
public static void main (String[] args) {
String data = "calls 'create' using 'POST' on some uri";
String[] dataArray = new String[2];
Matcher matcher = Pattern.compile("'[a-zA-Z]+'").matcher(data);
int counter = 0;
while (matcher.find()) {
String result = matcher.group(0);
dataArray[counter++] = result.substring(1, result.length() - 1);
}
}
输出:
dataArray[0] --> create
dataArray[1] --> POST
简单地使用这个
String dataArray[] = data.split("'");
->
[calls , create, using , POST, on some uri]
那么为什么“calls”
是一个标记,而“create”不是?