Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 在VB6中从字符串中删除字符_String_Vb6 - Fatal编程技术网

String 在VB6中从字符串中删除字符

String 在VB6中从字符串中删除字符,string,vb6,String,Vb6,我有一些字符串(文件路径),有时会在其中随机放置换行符(CRLF),我必须删除它们。我该怎么做呢?替换$()替换 path = Replace$(path, vbcrlf, "") 这将删除字符串中的所有CRLF strFileName = Replace(strFileName, vbNewLine, "") 以下是一个可以放在助手模块中的函数: Public Function CleanFilePath(FilePath As String) As String Return R

我有一些字符串(文件路径),有时会在其中随机放置换行符(CRLF),我必须删除它们。我该怎么做呢?

替换$()
替换

path = Replace$(path, vbcrlf, "")

这将删除字符串中的所有CRLF

strFileName = Replace(strFileName, vbNewLine, "")
以下是一个可以放在助手模块中的函数:

Public Function CleanFilePath(FilePath As String) As String
    Return Replace(FilePath, vbNewLine, "")
End Function
编辑:

或者,这里有一个辅助程序子例程来修改字符串本身。不过,在较新的语言中,这不是标准做法

Public Sub CleanFilePath(ByRef FilePath As String)
    FilePath = Replace(FilePath, vbNewLine, "")
End Sub
看看这个函数

someVariable = Replace(someVariable, vbNewLine, "")

如果我想创建一个helper函数,那么只修复路径而不返回任何内容就更有意义了,或者?你的意思是传递字符串本身
ByRef
并修改它?你可以,但是用新的语言返回值更为标准。同意这是标准做法,但这到底是为什么?传递引用不是比创建新对象更优化吗?似乎没有用美元符号替换美元的函数。@MatsT,
$
表示函数返回字符串。更确切地说,在变量和函数上使用
$
&
%
#
符号。这也是对一些(但不是replace())字符串函数的优化,我感到困惑,因为文档中提到了单独的函数用于其他函数,如LCase$/LCase和Trim$/Trim,但不是用于replace。为什么它不是一个针对替换的优化?VB6本来是一个过渡产品,但遗憾的是它是同类产品中的最后一个。当VBScript中添加了很多东西(例如Split、Replace)时,其中的一些代码似乎只是在VB6被冲出大门时移植的。这可能就是为什么VB6文档如此多地谈论FSO和RegEx对象,而我们从未在VB.+1中获得本机I/O流,尽管您已经链接到VB.NET2005文档。我冒昧地编辑了您的文章,以链接到VB6文档。