vbscript如何评估字符串大于字符串?

时间:2010-08-24 14:32:58

标签: c# vbscript code-conversion

我正在从一个asp应用程序转换一些vbscript并以

的形式跑过一行
If sCode > "" Then

我期望sCode包含字符串。我知道足够的vbscript来解决这个问题,但我不确定一些奇怪的陈述的行为。 c#不接受这作为有效条件检查。什么是等效的c#语句?

编辑:非常感谢有人可以为vbscript行为提供一些文档/参考。

5 个答案:

答案 0 :(得分:2)

因为在C#中字符串也可以是NULL,所以我会使用以下内容:

if(!string.IsNullOrEmpty(sCode))
    //do something

答案 1 :(得分:1)

我不是一个vbscript专家,但我的预感是vbscript重载>字符串,通常比较它们。因此,如果是这种情况,那么在C#sCode.CompareTo(string.Empty)中将给出你需要的东西,如果sCode小于空字符串(在这种情况下是不可能的话),则为-1,如果它们相等则为0,如果sCode相等则为1 sCode来了。

在这种特殊情况下,您可以检查sCode是否为空字符串。

答案 2 :(得分:0)

我只是简单地做!=,这似乎是代码的意图:

if(sCode != String.Empty)
  Do();

答案 3 :(得分:0)

在您的特定情况下,您只需比较'string.Empty',但更通用的答案是它(通常)不区分大小写的字母数字比较。例如,“ababa”< “z1asdf”是真的。 要用C#表示,你可以这样做:

'string.Compare(A,B)< 0'等于'A'

(通常)因为可以指定

答案 4 :(得分:0)

使用“<>” (不等于)运算符,如下:

dim string
string = "hello"
if (string <> "") then
    WScript.Echo "We're Ok" & VbCrLf
else
    WScript.Echo "Empty String" & VbCrLf
End if
相关问题