如何在 UFT 12.0 中使用 VBScript 字典设置双引号
How to set Double Quotes using VBScript Dictionary in UFT 12.0
这里我想在我的句子中添加双引号("
),但它在单个位置插入两个(“),如图所示。已尝试Chr(34)
和Replace()
.
请帮助我在 UFT12 中使用 VBScript 在字典项中插入双引号。
我不想使用 Msgbox 来显示这个字符串。
Dim Dict
Set Dict=CreatObject("Scripting.Dictionary")
Dic("Value")="I went to mall....Where I met my Friends "&Chr(32)&"XYZ" & "DEF"&Chr(34)&". We enjoied a lot."
当我 "Watched" Dic("Value")
使用 UFT12.0 它给出了显示:
"I went to mall....Where I met my Friends ""XYZ & DEF"". We enjoied a
lot."
您的调试器工具将字符串变量的值显示为文字(您必须 type/paste 到您的编辑器中)。证据:周围的双引号。
你的 .. "&Chr(32)&"XYZ" & "DEF"&Chr(34)&". ..
证明:使用 Chr() 是次等的(额外的函数调用和噪音)并且容易出错(Chr(错误的数字)转义为 " by ")。
这里有一个例子,除了详尽的(returns字符串和"
第一次出现的位置,并在该字符串中加倍""
) :
option explicit
Dim myString0, myString1, myString2, myString4
myString0 = "none double quotes"
myString1 = "with ""double"" quotes 1"
myString2 = "with " & Chr(34) & "double" & Chr(34) & " quotes 2"
myString4 = "twice """"double"""" quotes"
Wscript.Echo Wscript.ScriptName & ": Using Double Quotes" _
& vbNewLine & myString0 _
& vbTab & InStr( 1, myString0, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString0, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString1 _
& vbTab & InStr( 1, myString1, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString2, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString2 _
& vbTab & InStr( 1, myString2, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString2, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString4 _
& vbTab & InStr( 1, myString4, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString4, Chr(34)&Chr(34), vbTextCompare)
输出:
==>cscript //nologo 28778280.vbs
28778280.vbs: Using Double Quotes
none double quotes 0 0
with "double" quotes 1 6 0
with "double" quotes 2 6 0
twice ""double"" quotes 7 7
这里我想在我的句子中添加双引号("
),但它在单个位置插入两个(“),如图所示。已尝试Chr(34)
和Replace()
.
请帮助我在 UFT12 中使用 VBScript 在字典项中插入双引号。
我不想使用 Msgbox 来显示这个字符串。
Dim Dict
Set Dict=CreatObject("Scripting.Dictionary")
Dic("Value")="I went to mall....Where I met my Friends "&Chr(32)&"XYZ" & "DEF"&Chr(34)&". We enjoied a lot."
当我 "Watched" Dic("Value")
使用 UFT12.0 它给出了显示:
"I went to mall....Where I met my Friends ""XYZ & DEF"". We enjoied a lot."
您的调试器工具将字符串变量的值显示为文字(您必须 type/paste 到您的编辑器中)。证据:周围的双引号。
你的 .. "&Chr(32)&"XYZ" & "DEF"&Chr(34)&". ..
证明:使用 Chr() 是次等的(额外的函数调用和噪音)并且容易出错(Chr(错误的数字)转义为 " by ")。
这里有一个例子,除了详尽的"
第一次出现的位置,并在该字符串中加倍""
) :
option explicit
Dim myString0, myString1, myString2, myString4
myString0 = "none double quotes"
myString1 = "with ""double"" quotes 1"
myString2 = "with " & Chr(34) & "double" & Chr(34) & " quotes 2"
myString4 = "twice """"double"""" quotes"
Wscript.Echo Wscript.ScriptName & ": Using Double Quotes" _
& vbNewLine & myString0 _
& vbTab & InStr( 1, myString0, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString0, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString1 _
& vbTab & InStr( 1, myString1, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString2, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString2 _
& vbTab & InStr( 1, myString2, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString2, Chr(34)&Chr(34), vbTextCompare) _
& vbNewLine & myString4 _
& vbTab & InStr( 1, myString4, Chr(34) , vbTextCompare) _
& vbTab & InStr( 1, myString4, Chr(34)&Chr(34), vbTextCompare)
输出:
==>cscript //nologo 28778280.vbs
28778280.vbs: Using Double Quotes
none double quotes 0 0
with "double" quotes 1 6 0
with "double" quotes 2 6 0
twice ""double"" quotes 7 7