String str1="C^(,5)^(2)马五^(5)^(,2)"我想得到下面的结果C^(,5)^(2)
马五^(5)^(,2)我用了一个正则表达式
String arr[] = str1.split("(?<=\\(\\d\\).\\(\\d\\))")但是没有分隔开
马五^(5)^(,2)我用了一个正则表达式
String arr[] = str1.split("(?<=\\(\\d\\).\\(\\d\\))")但是没有分隔开
public static void main(String[] args) {
String str="C^(,5)^(2)马五^(5)^(,2)";
String arr[] = str.split("(?<=\\(,\\d\\).\\(\\d\\))");
System.out.println(java.util.Arrays.toString(arr));
}
String str1="A^(2)D^(,5)C^(,5)^(2)马五^(5)^(,2)";
String arr[] = str1.split("(?<=\\(,\\d\\).\\(\\d\\))");
for(int i=0;i<arr.length;i++)
{
System.out.println(arr[i]);
}
结果变为了:
A^(2)D^(,5)C^(,5)^(2)
马五^(5)^(,2)而我想得到的结果是
A^(2)
D^(,5)
C^(,5)^(2)
马五^(5)^(,2)
String str1="A^(2)D^(,5)C^(,5)^(2)马五^(5)^(,2)HH^(5)^(,2)";我是想按英文字符或汉字作为分割副,把他们分割开来
String str1="A^(,5)D^(,5)^(2)C^(,5)^(2)马五^(5)^(,2)H^(5)^(,2)FF^(,2)";
String arr[] = str1.split("[\u4e00-\u9fa5 a-zA-Z]");
for(int i=0;i<arr.length;i++)
{
System.out.println(arr[i]);
}
public static void main(String[] args) {
String str1="A^(2)D^(,5)C^(,5)^(2)马五^(5)^(,2)";
String arr[] = str1.split("(?<=\\))(?=[\\w\u4e00-\u9fa5])");
for(int i=0;i<arr.length;i++)
{
System.out.println(arr[i]);
}
}