我正在尝试编写一个正则表达式来解析表示函数调用的字符串。我想解析:
createNewEmail(mailToJohn, recipientGeorge, Subject, content);
进入一个字符串数组:
createNewMail
,
mailToJohn
,
recipientGeorge
,
Subject
,
content
其他可能的输入可能是:
createNewEmail(mailToJohn, recipientGeorge, Subject, content);
makeTemplateUser(templateName, userName);
deleteEmail(emailToDelete);
updateUserSetting(userId, changedSettings, oldSettingsId);
你怎么建议我解析这个?
答案 0 :(得分:2)
如果你的输入非常简单,你可以使用
line.Split(new[] { ' ', ',', '(', ')', ';' }, StringSplitOptions.RemoveEmptyEntries).Where(s => s.Length > 1).ToArray();
只要您的标识符(函数名称或参数)都不是单个字符长,它就会起作用;如果您需要处理这种情况,只需修改Where
过滤器即可。这将返回一个数组,您可以将其插入更大的数组(或添加到列表等)。