Vbscript &引用;“预期报表结束”;循环中

Vbscript &引用;“预期报表结束”;循环中,vbscript,Vbscript,我在第26行(从第三行到最后一行)得到一个“预期语句结束”错误。如果你看一下代码,这是一个简单的游戏,一个人输入一个单词,脚本用下划线替换所有辅音,第二个玩家必须猜单词。我认为第26行是这个程序唯一的错误 phrase=inputbox("Player 1: Enter a phrase","Guessing Game") phrase=answer phrase=Replace(phrase,"A","_") phrase=Replace(phrase,"B","_") phrase=Repl

我在第26行(从第三行到最后一行)得到一个“预期语句结束”错误。如果你看一下代码,这是一个简单的游戏,一个人输入一个单词,脚本用下划线替换所有辅音,第二个玩家必须猜单词。我认为第26行是这个程序唯一的错误

phrase=inputbox("Player 1: Enter a phrase","Guessing Game")
phrase=answer
phrase=Replace(phrase,"A","_")
phrase=Replace(phrase,"B","_")
phrase=Replace(phrase,"C","_")
phrase=Replace(phrase,"D","_")
phrase=Replace(phrase,"F","_")
phrase=Replace(phrase,"G","_")
phrase=Replace(phrase,"H","_")
phrase=Replace(phrase,"J","_")
phrase=Replace(phrase,"K","_")
phrase=Replace(phrase,"L","_")
phrase=Replace(phrase,"M","_")
phrase=Replace(phrase,"N","_")
phrase=Replace(phrase,"P","_")
phrase=Replace(phrase,"Q","_")
phrase=Replace(phrase,"R","_")
phrase=Replace(phrase,"S","_")
phrase=Replace(phrase,"T","_")
phrase=Replace(phrase,"V","_")
phrase=Replace(phrase,"W","_")
phrase=Replace(phrase,"X","_")
phrase=Replace(phrase,"Y","_")
phrase=Replace(phrase,"Z","_")
Do
result=InputBox "Player 2 enter your guess for" & phrase , "Guessing Game"
Loop until result==answer
msgbox "You got it!",vbokonly,"Guessing Game"

在VBScript中,“相等”比较运算符为=。所以改变

Loop until result==answer
==>


在VBScript中,“相等”比较运算符为=。所以改变

Loop until result==answer
==>


在VBScript中,“相等”比较运算符为=。所以改变

Loop until result==answer
==>


在VBScript中,“相等”比较运算符为=。所以改变

Loop until result==answer
==>


看到jmvp在优化您的程序方面做得如此出色,我也想这么做!:)

这是我的版本。我添加了一个常量来指定应用程序名(因为它已经使用了几次),并且允许播放器2通过单击“取消”(或不输入任何内容)退出播放


看到jmvp在优化您的程序方面做得如此出色,我也想这么做!:)

这是我的版本。我添加了一个常量来指定应用程序名(因为它已经使用了几次),并且允许播放器2通过单击“取消”(或不输入任何内容)退出播放


看到jmvp在优化您的程序方面做得如此出色,我也想这么做!:)

这是我的版本。我添加了一个常量来指定应用程序名(因为它已经使用了几次),并且允许播放器2通过单击“取消”(或不输入任何内容)退出播放


看到jmvp在优化您的程序方面做得如此出色,我也想这么做!:)

这是我的版本。我添加了一个常量来指定应用程序名(因为它已经使用了几次),并且允许播放器2通过单击“取消”(或不输入任何内容)退出播放


您得到了这个错误,因为您在赋值中使用了函数,而没有将其参数列表放在括号中。更改此行:

result=InputBox "Player 2 enter your guess for" & phrase , "Guessing Game"
为此:

result=InputBox("Player 2 enter your guess for" & phrase , "Guessing Game")
这是VBScript的一个难题:根据调用过程或函数的位置/方式,必须或不得将参数列表放在括号中

>>字符串3,“*”不能在此处使用括号
>>>字符串(3,“*”)
调用Sub(0x414)时不能使用括号
>>>调用字符串(3,“*”)必须在此处使用括号
>>>调用字符串3,“*”
预期的语句结尾(0x401)
>>>v=字符串(3,“*”)必须在此处使用括号
>>>v=字符串3,“*”
预期语句结束(0x401)
更糟糕的是,在某些情况下,无论如何都可以使用括号,因为括号在该上下文中有不同的含义:

>>> Hour(Now)
>>小时(现在)
这实际上是可行的,因为这里的括号不是“参数列表”,而是“按值传递此参数”。看看括号在VBScript中可以创建的许多有趣的情况

如前所述,脚本中的另一个错误是使用
=
而不是
=
来比较值


作为旁注:您似乎假设输入总是只包含大写字母,但您从未在任何地方强制执行。您可能希望
UCase
您的输入,或者添加一个检查来验证输入。

您会收到该错误,因为您在赋值中使用了函数,而没有将其参数列表放在括号中。更改此行:

result=InputBox "Player 2 enter your guess for" & phrase , "Guessing Game"
为此:

result=InputBox("Player 2 enter your guess for" & phrase , "Guessing Game")
这是VBScript的一个难题:根据调用过程或函数的位置/方式,必须或不得将参数列表放在括号中

>>字符串3,“*”不能在此处使用括号
>>>字符串(3,“*”)
调用Sub(0x414)时不能使用括号
>>>调用字符串(3,“*”)必须在此处使用括号
>>>调用字符串3,“*”
预期的语句结尾(0x401)
>>>v=字符串(3,“*”)必须在此处使用括号
>>>v=字符串3,“*”
预期语句结束(0x401)
更糟糕的是,在某些情况下,无论如何都可以使用括号,因为括号在该上下文中有不同的含义:

>>> Hour(Now)
>>小时(现在)
这实际上是可行的,因为这里的括号不是“参数列表”,而是“按值传递此参数”。看看括号在VBScript中可以创建的许多有趣的情况

如前所述,脚本中的另一个错误是使用
=
而不是
=
来比较值


作为旁注:您似乎假设输入总是只包含大写字母,但您从未在任何地方强制执行。您可能希望
UCase
您的输入,或者添加一个检查来验证输入。

您会收到该错误,因为您在赋值中使用了函数,而没有将其参数列表放在括号中。更改此行:

result=InputBox "Player 2 enter your guess for" & phrase , "Guessing Game"
为此:

result=InputBox("Player 2 enter your guess for" & phrase , "Guessing Game")
这是VBScript的一个难题:根据调用过程或函数的位置/方式,必须或不得将参数列表放在括号中

>>字符串3,“*”不能在此处使用括号
>>>字符串(3,“*”)
调用Sub(0x414)时不能使用括号
>>>调用字符串(3,“*”)必须在此处使用括号
>>>调用字符串3,“*”
预期的语句结尾(0x401)
>>>v=字符串(3,“*”)必须在此处使用括号
>>>v=字符串3,“*”
预期语句结束(0x401)
更糟糕的是,在某些情况下,无论如何都可以使用括号,因为括号在该上下文中有不同的含义:

>>> Hour(Now)
>>小时(现在)
这实际上是可行的,因为这里的括号不是“参数列表”,而是“按值传递此参数”。看看括号在VBScript中可以创建的许多有趣的情况

如前所述,脚本中的另一个错误是使用
=
而不是
=
来比较值

作为旁注:您似乎假设输入将始终由uppe组成