Java 将显示名称字符串从“更改”;“第一个M.最后一个”;至;最后,第一个“M”;?
我有一个名字“John B.Smith”,我需要将名字的格式改为“Smith,John B”。我正在考虑使用正则表达式,但即使在读过它之后,我也不完全理解它。有人能帮忙吗Java 将显示名称字符串从“更改”;“第一个M.最后一个”;至;最后,第一个“M”;?,java,regex,string,Java,Regex,String,我有一个名字“John B.Smith”,我需要将名字的格式改为“Smith,John B”。我正在考虑使用正则表达式,但即使在读过它之后,我也不完全理解它。有人能帮忙吗 您还可以花点时间解释一下表达式中发生了什么吗?与解析正则表达式常用的电子邮件地址或HTTP地址相比,正则表达式解析简单的名称可能有些过分 为什么不直接用空格字符分割名称,然后用第三个数组元素(Smith)创建一个新字符串,在第一个数组元素(John)之前插入一个逗号呢 我使用的正则表达式是(\w+)\s+(\w+)\s+(\w
您还可以花点时间解释一下表达式中发生了什么吗?与解析正则表达式常用的电子邮件地址或HTTP地址相比,正则表达式解析简单的名称可能有些过分
为什么不直接用空格字符分割名称,然后用第三个数组元素(Smith)创建一个新字符串,在第一个数组元素(John)之前插入一个逗号呢 我使用的正则表达式是
(\w+)\s+(\w+)\s+(\w+)
。下面是它的分解:
\w+
时,我是说我在寻找一个带有一个或多个字母、数字或下划线的正则表达式。这通常用于查找单词\s+
时,我在寻找一个或多个空格字符()
意味着我想要捕获(也就是记住)这个正则表达式匹配的输入部分步骤#1尝试一下#2观察发生了什么#3更新/更正并重复或处理类似name.split(\\s)System.out.println(“nameArray[1]+,“+nameArray[0]