根据 javascript 中的正则表达式模式进行匹配和替换

Match and replace depending on the regex pattern in javascript

我无法部署工作流程来使用多个正则表达式模式来匹配和替换以下名称模式。我需要提取姓氏、名字、中间名首字母或用白色 space 填充,并在它们之间放置逗号示例:

在:

输出:

我使用的程序停止在名字上

如有任何帮助,我们将不胜感激。

谢谢 - 马特

如果您确实需要使用正则表达式,(\w+(?:-\w+)?),(\w+)\s(?:([a-zA-Z]{1})\s)?(\w+) 将为您提供所需的捕获。

但是,使用 split 函数会容易得多...

var name = "HILL,ADAM APRN";
var newName = name.split(/[ ,]/).join(',')
var str = "HILL,ADAM APRN";
var blocks = str.match(/ /g).length;
var nuStr = (blocks==1 ? (str.replace(/ /, ', ,')) : (str.replace(/ /g, ',')));