gpt4 book ai didi

java - 在java中交换数组中元素的位置?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:41:06 24 4
gpt4 key购买 nike

好的,这是我第一次在这里发帖,所以请多多包涵。

我有一个格式为 "Smith, Bob I" 的名字,我需要将此字符串转换为 "Bob I. Smith"。关于如何进行此操作的任何想法?

这是我尝试过的一种方法,虽然它确实完成了工作,但看起来很草率。

public static void main(String[] args) {
String s = "Smith, Bob I.", r = "";
String[] names;

for(int i =0; i < s.length(); i++){
if(s.indexOf(',') != -1){
if(s.charAt(i) != ',')
r += s.charAt(i);
}

}
names = r.split(" ");
for(int i = 0; i < names.length; i++){
}
System.out.println(names[1] +" " + names[2] + " " + names[0]);


}

最佳答案

如果名字总是<last name>, <firstname> ,试试这个:

String name = "Smith, Bob I.".replaceAll( "(.*),\\s+(.*)", "$2 $1" );

这将收集 Smith进入组 1 和 Bob I.进入第 2 组,然后访问为 $1$2在替换字符串中。由于 (.*)表达式中的组整个字符串匹配并将被替换完全替换,替换只是交换并用空格字符分隔的 2 个组。

关于java - 在java中交换数组中元素的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10541499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com