String.Substring 和 Mid 有什么区别?

Alp*_*ash 1 vb.net

我真的很困惑VB.NETMidSubstringVB.NET 之间的关系。谁能通过程序帮助我理解其中的区别?我们将非常感激。

Cai*_*ard 5

您可以阅读MidSubstring的文档

最大的区别在于 Mid 是一个遗留适配器函数,旨在帮助 VB6 代码在粘贴到 vb.net 项目中时工作,或者为 VB6 程序员提供一些熟悉的功能,同时他们切换到使用现代 .NET 等效项(子字符串)

作为一个遗留函数,Mid 采用 VB6 字符串概念,即基于 1 的索引,而不是基于 0 的索引(几乎所有其他 .NET 使用),因此 Mid 中的任何内容都应该有一个比 Substring 中的任何内容大 1 的起始参数。

Mid("Hellow World",1,5) 'returns Hello
Substring("Hellow World",0,5) 'returns Hello
Run Code Online (Sandbox Code Playgroud)

Substring 有一个推论,Remove,它会像 Left 一样删除某个点之后的字符。放弃左/中/右,转而使用子字符串/删除,可以更容易地理解要使用什么/如果传入的字符串是从右到左的语言,会发生什么