如何在 VBScript 中转义正斜杠字符 (
/
)?例如,在以下字符串中:bob = "VU administration/front desk"
你不需要转义它:在PHP或VBScript中,它没有任何特殊含义,因此不需要进行转义。在VBScript中,您唯一需要转义的字符是双引号,而双引号本身可以进行转义:
MyString = "He said, ""Here's how you escape a double quote in vbscript. Slash characters -- both forward (/) and back (\) -- don't mean anything, even when used with common control characters like \n or \t."""
这太错误了,我必须对此发表评论。问题是关于VBScript,而不是PHP,所以谁在乎PHP如何处理斜杠?在VB中,斜杠/确实有特殊含义。字符/代表DOUBLE。如果您的代码编辑器将此字符显示为DOUBLE,或者在您不打算转换为DOUBLE时出现转换为DOUBLE的错误,则可能需要修复字符串中的某些内容。
例如,在此查询字符串中,VB将正斜杠/视为DOUBLE,程序将在此处失败,因为无法将选择replace(convert(char(10),pih.updateon,111),从文本转换为double。
Dim sQuery As String = "select replace(convert(char(10),pih.updateon,111),"/","-") as stopdate from myTable"
然而,问题很可能不是斜杠转义的问题。你很可能在其他地方出了差错。在这种情况下,如果你正确输入了字符串,它应该是这样的:
Dim sQuery As String = "select replace(convert(char(10),pih.updateon,111),'/','-') as stopdate from myTable"
希望这个例子有助于理解,如果你在斜杠方面遇到问题,可能是哪里出了错。
补充说明:在VBScript和VB中,主要区别是VB编译,而VBScript解释,此时语法的处理方式相同。
d-bo
虽然这个讨论已经很晚了,但当我在研究类似问题时,我发现了这个主题,因为我试图匹配独立的HTML标签中的正斜杠。
根据VBA word.find.execute method 文档
要搜索符号字符,请键入插入符号 (^),数字 0,然后是符号的字符代码。例如,“^0151” 对应于长划线(—)。
从VBA文档上看character set code
正斜杠“/”对应于47,您可以通过验证
Debug.Print ("Char Code 47: " & vbTab & Chr(47))
使用类似以下方式的查找匹配:
With Range.Find
.MatchWildCards = True
.Text = "\<?*.PNG^047\>"
Do While .Execute [...]