在 MsgBox()
中,换行符 \n
的替代方案是什么?
vbCrLf
或 vbNewLine
Environment.NewLine
或 vbCrLf
或 Constants.vbCrLf
Environment.NewLine
的信息来自Cody Gray和J Vermeire
vbCrLf
! 它只是为了兼容移植的VB 6应用程序。相反,你应该使用J. Vermeire答案中建议的Environment.NewLine
。 - Cody Grayn
……只是为了方便起见。(Public n As String = Environment.NewLine
) - Galacticai尝试使用vbcrlf
来换行
msgbox "This is how" & vbcrlf & "to get a new line"
以下是用于创建新行的字符序列:
vbCr
是回车符(回到行首),
vbLf
是换行符(到下一行)
vbCrLf
是回车符/换行符(类似于按Enter键)
我更喜欢使用 vbNewLine
,因为它不依赖于操作系统(在某些系统上,vbCrLf
可能不是真正的新行符)
vbNewLine
只是被定义为vbCrLf
。它们没有任何区别。 - Cody GrayvbNewLine
更清晰地表达了你的意图。它显然被设计用于插入新行。我只是提供辅助评论。在“引擎盖下”,它们做的事情是一样的。像这样的实现细节不应该泄漏到你的代码中。 - Cody GrayvbCrLf
/vbNewLine
的无聊内容。 - Cody Gray加入vbNewLine
如下:
"text1" & vbNewLine & "text2"
替代Environment.NewLine的方法是使用:
Regex.Unescape("\n\tHello World\n")
来自 System.Text.RegularExpressions
这使您能够转义文本,而无需像在 C#、C、Java 中那样连接字符串。
"text1" + vbNewLine + "text2"
使用命令“vbNewLine”
示例
Hello & vbNewLine & "World"
将显示为 Hello在一行上,World在另一行上
MsgBox($"Hi!{Environment.NewLine}I'M HERE")
Module MyHelpers
<Extension()>
Public Function UnEscape(ByVal aString As String) As String
Return Regex.Unescape(aString)
End Function
End Module
使用方法:
console.writeline("Ciao!\n".unEscape)