2013-02-19 105 views
2

我正在编写一个脚本,它将重命名导出的PST文件以匹配导入新系统所需的格式。将字符串转换为电子邮件地址

我想在VBScript中使用正则表达式与Replace一起执行此操作。

的示例串:

JoeBloggs_Export_001.pst 

所需的最终结果:

[email protected]_001.pst 

我已经明显得到了与@ emaildomain.com替换的出口。与Replace合作。

我很努力得到插入。在名字和姓氏之间,我认为使用正则表达式来做到这一点是最好的方法。我正在努力争取这个工作。显然,名字的长度各不相同。

我现在已经尝试过各种正则表达式,所以我不希望分享任何这些东西,而是希望得到一组全新的眼睛将有助于突出我出错的地方。

非常感谢提前。

马克

回答

1

假设你想打破帕斯卡套管名瓶盖,你可以捕捉小写其次是大写&插入一个“”;

set re = New RegExp 
re.Pattern = "([a-z])([A-Z])" 
re.global = true 

filename = "JoeBloggs_Export_001.pst" 

msgbox replace(re.Replace(fileName, "$1.$2"), "_Export_", "@emaildomain.com._") 

>> [email protected]_001.pst 
+0

+1为讨厌的点。 – 2013-02-19 11:38:21

+0

谢谢亚历克斯,工程款待!我知道这会是一件简单的事情,而且我过于复杂了。 – user2086728 2013-02-19 11:40:15

相关问题