我正在尝试将字符串拆分为不同的组,但我没有此任务的经验。所以我需要一个正则表达式,它在 Java 中将原始字符串分为两组
我的文本示例是:
卡尔卡尼卡尔卡尼
我想要:
第 1 组: 钙
第 2 组:kalkani(或者,如果可能,kalkani)
知道如何创建这种模式吗?
谢谢!
String x="calcani k a l k a n i";
String []x1=x.split(" ",2);
System.out.println(x1[0]);
System.out.println(x1[1]);
输出
calcani
k a l k a n i
如果你想要像下面这样的输出
calcani
kalkani
然后使用
String x="calcani k a l k a n i";
String []x1=x.split(" ",2);
System.out.println(x1[0]);
System.out.println(x1[1].toString().replace(" ", ""));
为什么是正则表达式。只需实现这个逻辑:
第一个空格右侧的其余字符串是您的第二个匹配项,此时如果您想删除所有可以使用的空格:
String repl = str.replace(" ", "");
使用方法中的第二个参数String.split()
来控制拆分字符串生成的最大子字符串数:
String[] temp = "calcani k a l k a n i".split(" ", 2);
您将获得两个字符串,如下所示:
String[] results = "calcani k a l k a n i".split(" ", 2);
//remove spaces from second group
String secondGroup=result[1];
secondGroup=secondGroup.replaceAll(" ","");
System.out.println("result[0] ->"+result[0]);
System.out.println("result[1] ->"+result[1]);
输出
result[0] ->calcani
result[1] ->kalkani
尝试这个,
String[] results = "calcani k a l k a n i".split(" ", 2);
System.out.println(results[0]);
System.out.println(results[1].replace(" ", ""));