Java拆分为姓和名
public static String[] getNameSplit(String name) {
String[] compoundSurname = {"太史", "濮阳", "颛孙", "闻人", "叔孙", "公上", "夹谷",
"汝嫣", "褚师", "公户", "兀官", "西门", "城池", "东郭", "令狐", "公乘", "南郭", "漆雕",
"宗政", "公良", "夏侯", "宰父", "公山", "司徒", "公皙", "宗正", "雍门", "车正", "仲孙",
"万俟", "司寇", "上官", "仲长", "贯丘", "司城", "南荣", "第五", "綦毋", "宇文", "钟离",
"公仪", "淳于", "左丘", "尉迟", "百里", "东宫", "慕容", "子桑", "公仲", "东方", "乐正",
"胡母", "子书", "王孙", "屈突", "吴铭", "东里", "谷梁", "微生", "南宫", "东门", "公伯",
"达奚", "段干", "拓跋", "澹台", "轩辕", "公祖", "鲜于", "公坚", "公孙", "贺兰", "亓官",
"诸葛", "南门", "司马", "北宫", "申屠", "司空", "皇甫", "公羊", "尔朱", "公玉", "公西",
"即墨", "毋丘", "长孙", "屋庐", "梁丘", "张廖", "公冶", "赫连", "闾丘", "东乡", "羊舌",
"单于", "相里", "欧阳", "太叔", "巫马", "呼延", "独孤", "公门", "端木", "壤驷", "子车"};
name = name.replace(" ", "");
if (name.length() > 1) {
String regex = "[a-zA-Z0-9]+";
String regex1 = ".*[a-zA-z].*";
if (!(name.matches(regex) || name.matches(regex1))) {
String[] names = new String[2];
List<String> compoundSurnameList = Arrays.asList(compoundSurname);
String x2 = name.substring(0, 2);
if (name.length() > 2) {
if (compoundSurnameList.contains(x2)) {
names[0] = x2;
names[1] = name.substring(2);
return names;
}
}
names[0] = name.substring(0, 1);
names[1] = name.substring(1);
return names;
}
}
return null;
}