Vbscript 如何在VB脚本中转义分号?
我有一个vbscript文件,它读取一个文件并将每一行发送到终端程序。当它位于字符串中间的分号时,它会在字符串中分拆分号。 我已经用这段代码处理其他字符串很长时间了,没有任何问题。脚本正在读取的文件中每行有一个字符串 导致问题的文件中的字符串是:2101;99PSP 以下是我正在使用的代码(与名为Reflections的终端仿真程序一起使用):Vbscript 如何在VB脚本中转义分号?,vbscript,escaping,Vbscript,Escaping,我有一个vbscript文件,它读取一个文件并将每一行发送到终端程序。当它位于字符串中间的分号时,它会在字符串中分拆分号。 我已经用这段代码处理其他字符串很长时间了,没有任何问题。脚本正在读取的文件中每行有一个字符串 导致问题的文件中的字符串是:2101;99PSP 以下是我正在使用的代码(与名为Reflections的终端仿真程序一起使用): 我认为它可能需要执行以下代码行: arrC2oderableItemList = Split(strNextLine, ";", 3) 我认为它可能需
我认为它可能需要执行以下代码行:
arrC2oderableItemList = Split(strNextLine, ";", 3)
我认为它可能需要执行以下代码行:
arrC2oderableItemList = Split(strNextLine, ";", 3)
如果此问题字符串是您正在读取的文件的整行:
2101;99PSP
问题是,您试图从每行中获取3项,而这一行只有2项。要解释没有第三项的行,您应该从Split函数中删除第三个参数,然后在使用第三项之前检查数组的UBound
arrC2oderableItemList = Split(strNextLine, ";")
If UBound(arrC2oderableItemList) >= 2 Then
''# There are 3 items or more in the Array (O-based)
''# Can do something with arrC2oderableItemList(2)
Else
''# There are only 2 items (or less) in the Array
''# Do not use arrC2oderableItemList(2)
End If
如果此问题字符串是您正在读取的文件的整行:
2101;99PSP
问题是,您试图从每行中获取3项,而这一行只有2项。要解释没有第三项的行,您应该从Split函数中删除第三个参数,然后在使用第三项之前检查数组的UBound
arrC2oderableItemList = Split(strNextLine, ";")
If UBound(arrC2oderableItemList) >= 2 Then
''# There are 3 items or more in the Array (O-based)
''# Can do something with arrC2oderableItemList(2)
Else
''# There are only 2 items (or less) in the Array
''# Do not use arrC2oderableItemList(2)
End If
如果要以分号分隔行,但文本包含额外的分号,则必须
如果(2101;99PSP)是行中的全部内容,请参见Shawn Steward的答案。如果要以分号分隔行,但文本中包含额外的分号,则必须
如果(2101;99PSP)是线上的全部内容,请参见Shawn Steward的回答。您的意思是“它在分号处拆分字符串”?您到底遇到了什么问题?你是说数据中有一个有效的分号,并且导致你的分割不能正常工作吗?数据在字符串中间有一个有效分号。我不希望字符串在分号上拆分,只希望在换行符上拆分。你的意思是“它在分号处拆分字符串”?你到底遇到了什么问题?你是说数据中有一个有效的分号,并且导致你的分割不能正常工作吗?数据在字符串中间有一个有效分号。我不希望字符串在分号上分开,只希望在换行符上分开。非常感谢。我在重复使用我的一些非常旧的代码,直到现在我才发现这一点。在上一个脚本中,我使用了“;”作为分隔符。非常感谢。我在重复使用我的一些非常旧的代码,直到现在我才发现这一点。在上一个脚本中,我使用了一个“;”作为分隔符。