You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VB中去除字符串首尾的双引号?

移除字符串首尾双引号的VB代码修正

我需要移除字符串首尾的双引号,参考了一段C#代码后改成VB版本,但无法编译:

Imports System

Module Program
    Sub Main(args As String())
        Dim text As String = """Text"""
        Console.WriteLine("Original value: " & text)

        Dim trimmed As String = text.Trim('"')
        Console.WriteLine("Trimmed value: " & trimmed)
    End Sub
End Module

去掉最后两行时,输出正常:

Original value: "Text"

我期望的最终输出是:

Original value: "Text"
Trimmed value: Text

但编译时收到错误:

Program.vb(9,55): error BC30198: ')' expected.

(错误出在第9行的Trim调用语句)


修正方法

VB中的String.Trim方法要求传入字符数组作为参数,这和C#的语法不同。你需要把双引号包装成字符数组,有几种写法可选:

修改后的完整代码

Imports System

Module Program
    Sub Main(args As String())
        Dim text As String = """Text"""
        Console.WriteLine("Original value: " & text)

        ' 写法1:显式声明字符数组
        Dim trimmed As String = text.Trim(New Char() {""""c})
        ' 写法2:省略New Char(),利用类型推断更简洁
        ' Dim trimmed As String = text.Trim({""""c})
        ' 写法3:用Chr(34)表示双引号,可读性更好
        ' Dim trimmed As String = text.Trim({Chr(34)})
        
        Console.WriteLine("Trimmed value: " & trimmed)
    End Sub
End Module

错误原因说明

原代码中text.Trim('"')不符合VB语法,因为VB不支持直接传递单个字符给Trim方法,必须传入字符数组形式的参数。调整后即可正常编译,实现移除首尾双引号的功能。


内容的提问来源于stack exchange,提问作者Jon Skeet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 18:22:10