用普通

时间:2015-06-08 14:19:59

标签: vb.net replace utf-8

在VB.NET中如何用ASCII引号(“)替换特殊的开始和结束双引号(”和“)。

我试过

s = s.replace("“", """")

但似乎Visual Studio认为“我的代码中的引用是一个正常的引用,留下了无效的声明。”

2 个答案:

答案 0 :(得分:1)

不幸的是,VB.NET不支持转义序列,但您可以使用ChrW()来指定代码点:

s = s.Replace(ChrW(&H201C), """")

的代码,的代码是& H201D。请注意,使用代码点可以自由搜索&替换任何Unicode字符(不仅仅是VB.NET的转义 - 例如" )。

有关完整列表,请参阅:http://unicode-table.com/en/

答案 1 :(得分:1)

如果要在字符串中使用引号,VB不知道引号是否应该结束字符串。在C#中,这可以通过转义引号来修复,即代替"\""你写""""。在VB中,通过加倍引号来完成同样的操作,即s = Replace(s , "““", "“")

回到你的卷曲报价。与直引号相同,根据VB语言规范(¶1.6.4)。因此,要在代码中编写卷曲引号,请尝试以下操作:

s = Replace(s , ChrW(&H201C), "“")

第二种方式:{{1}}