Jon*_*eet 4 vb.net string trim
我收到一个字符串,有时在开头和/或结尾处有双引号。我需要不带引号的字符串。我尝试遵循此问题中的 C# 代码,但无法编译:
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
Run Code Online (Sandbox Code Playgroud)
如果没有最后两行,则会打印:
Original value: "Text"
Run Code Online (Sandbox Code Playgroud)
我想要打印最终的代码:
Original value: "Text"
Trimmed value: Text
Run Code Online (Sandbox Code Playgroud)
我收到的编译时错误是:
Program.vb(9,55):错误 BC30198:预期为“)”。
(第 9 行是Trim呼叫。)
我应该如何更改代码来编译和修剪引号?
在 C# 中,"不需要在字符文字中进行转义。
VB 字符文字的语法有点不同。它就像一个字符串文字,但带有C后缀。要使用双引号,您需要在字符文字中将其加倍,就像在字符串文字中一样。这是您的原始示例,但已修复:
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(""""C)
Console.WriteLine("Trimmed value: " & trimmed)
End Sub
End Module
Run Code Online (Sandbox Code Playgroud)
现在输出已达到预期。
请注意,这对字符串中的双引号没有Trim帮助,因为只查看开头和结尾。要删除所有双引号,您应该使用String.Replace。这是一个例子:
Imports System
Module Program
Sub Main(args As String())
Dim text As String = """Before middle quote""After middle quote"""
Console.WriteLine("Original value: " & text)
Dim trimmed As String = text.Trim(""""C)
Console.WriteLine("Trimmed value: " & trimmed)
Dim replaced As String = text.Replace("""", "")
Console.WriteLine("Replaced value: " & replaced)
End Sub
End Module
Run Code Online (Sandbox Code Playgroud)
输出:
Original value: "Before middle quote"After middle quote"
Trimmed value: Before middle quote"After middle quote
Replaced value: Before middle quoteAfter middle quote
Run Code Online (Sandbox Code Playgroud)
当然,您可以用字符串替换双引号,或者用单引号代替。
| 归档时间: |
|
| 查看次数: |
667 次 |
| 最近记录: |