如何逐字阅读字符串

时间:2015-08-17 14:35:21

标签: string vbscript word

我有一个VBScript,它从txt文件中读取用户名。用户名来自目录的长字符串以及之后的一些其他信息。使用VBS我必须从文本文件中删除该行的第一部分和最后一部分才能读取该名称。

现在,我的变量(strName)会给我一些类似的内容:"john doe"。我的最终目标是将其转换为电子邮件地址。该域名始终相同,因此我需要能够以"john doe"开头并以"john.doe@gmail.com"结尾(不会指定实际域名s irrelevant to the question). Right now I was able to add the" @ gmail.com"`到字符串,但我不知道怎么做其余的。

我正在考虑将第一个名称读入新变量strFirstName,将第一个名称读入第二个strLastName,然后在以下行中添加一行:

strName = strFirstName + "." + strLastName + "@gmail.com"

我一次只能读一个单词?我在脚本中使用了以下函数来获取名称,但由于名称的长度可能不同,因此我不能使用相同的内容。

strName = Mid(strName, 4 + 11)
strName = Left(strName, (LEN(strName)-13))

1 个答案:

答案 0 :(得分:1)

如果您的源字符串始终采用以下格式:

C:\Directory\first last\OS - Information

然后,您可以使用少量Split() s

提取名字和姓氏
strSource = "C:\Directory\John Doe\OS - Information"
strName  = Split(strSource, "\")(2)
strFirst = Split(strName)(0)
strLast  = Split(strName)(1)

第一个Split()将您的字符串分隔为\,创建了4个元素。由于您只关心第三个(索引2),因此您只需附加(2)即可返回该字符串。

现在我们已经John Doe,只需再次使用Split()(空格字符是默认值)来提取名字和姓氏。

现在您可以创建您的电子邮件地址:

strEmail = strFirst & "." & strLast & "@gmail.com"