有时在Outlook中为某个会议发送新的活动邀请时,由于公司惯例,我需要在邀请正文中提到会议所需的所有人员。很多时候,我已经发出邀请的人都是我需要重新写信的人。我发现,如果我把这些名字从"To…"字段,它们以name <mail>; name <mail>; name <mail>
的格式粘贴,所以我编写了这个Python函数来将其转换为一个普通的名称列表,由一个新的行分隔,并删除了邮件地址:
def format_invitees(string):
import re; return ''.join(x.strip(' n')+'n' for x in re.sub("[<].*?[>]", "", string).replace(' ; ', ';').split(';')).strip('n')
现在,有没有什么好方法来实现这个功能到Outlook宏,是否将其分配给热键或添加到右键单击菜单?要提一下,Python是我唯一会的语言,由于组织命令,我不允许安装任何外部软件。最好的问候!
我认为import re; return re.sub(r" ?<.*?>;? ?","n",string)
是定义Python函数的一种更短的方式。
但更符合你的观点,按照这个问题的说明启用VBA正则表达式模块(给Word,但适用于Outlook):如何使用/启用(RegExp对象)正则表达式使用VBA(宏)在Word
我认为前景。属性对于获取需要列出的人员的姓名可能很有用:https://learn.microsoft.com/en-us/office/vba/api/outlook.recipients