我将LDAP连接到Active Directory以获取公司电话簿。我抓住了我想要的数据,但是我需要对我抓住的一些数据做一个If ... Else声明。
我想检查AD属性' homePhone'中的值。从" 01"开始。如果是的话,我想写出它的价值。如果它从其他任何东西开始,我想要写#34;"或"无效"。
这是我一直在写的,但是没有工作:
Response.Write "<td>"
if objRS("homePhone") = "01*" then
Response.Write objRS("homePhone")
else
Response.Write ""
end if
Response.Write "</td>"
这似乎只是去了Else条件,homePhone属性没有被写入。
答案 0 :(得分:1)
您不能在字符串比较中使用通配符,不幸的是,VBScript不支持VBA / VB中使用的Like
运算符。你可以使用正则表达式,但这对你需要的东西来说太过分了。只需剥去前两个字符并进行比较。
If Left(objRS("homePhone"), 2) = "01" Then
如果您需要执行不区分大小写的字符串比较(在这种情况下不是必需的,但将来可能会有所帮助),您可以在比较或使用StrComp()
函数之前将两个字符串转换为大写/小写字母。 vbTextCompare
参数值。
If StrComp(Left(objRS("homePhone"), 2), "01", vbTextCompare) = 0 Then