请大家帮忙写下insert into `admin_user`(`id`,`user_id`,`user_name`,`name`,`time`) 提取里面的表明和属性字段 即``中的字符串
------解决思路----------------------
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.ArrayList;
public class Test{
public static void main(String[] args){
process();
}
private static void process(){
String regex = "(?:'([\\w_]+?)'\\()?'([\\w_]+)'"; //group(1)获取Table的名称,并且只在第一次符合条件.后续都将获取不到
//group(2)用于获取att的名称.
String content = "insert into 'admin_user'('id','user_id','user_name','name','time') ";
String tableName = "";
ArrayList<String> attsList = new ArrayList<String>();
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(content);
while(matcher.find()){
if(matcher.group(1) != null){
tableName += matcher.group(1);
}
attsList.add(matcher.group(2));
}
System.out.println("Table Name:" + tableName);
System.out.println("Attributes:");
for(int i = 0 ; i < attsList.size() ; i ++){
System.out.println(attsList.get(i));
}
}
}