Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
822 views
in Technique[技术] by (71.8m points)

vb.net - How to add open and close quotes if A string has spaces

I'm trying to write an If then statement to see if a string has a space in it. If it does, I want it to put an " and " around the variable. Below is my current code:

If ColumnText.Contains(" ") Then
                        MsgBox(""" & ColumnText & """)
                    End If
                Next

But it's seeing quoting everything... Any suggestions?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

To properly escape a double quote inside VB's double quoted string literal, you need to double it (no pun intended). This means an empty string "". When you squeeze a quote in it, you get 4 quotes """", and this really means just one double quote literal.

You should be using:

MsgBox("""" & ColumnText & """")

Instead of:

MsgBox(""" & ColumnText & """)

Another thing - notice how the syntax parser highlights your line when it has 3 quotes. In this case & ColumnText & is part of the literal, instead of being an inline variable.

Reference:


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...