string - 在vb6(TrimChar)中从字符串的左右删除某些字符

标签 string vb6

我想删除一些在字符串中错误使用的某些字符。

“......我.wanna.delete.only.the.dots.outside.of.this.text.......”

如您所见,我不能为此使用替换。我必须找到一种方法来只删除字符串左右两侧的字符,而那些点只是我想删除的字符的一个例子。我有一系列不需要的字符。所以在处理字符串之后应该看起来像

“I.wanna.delete.only.the.dots.outside.of.this.text”

但我找不到获得这项工作的方法。

最佳答案

VB6 有一个 Trim() 函数,但它只删除空格。

要从两端删除字符,您需要依次检查每一端删除字符,直到得到其他内容:

Function TrimChar(ByVal Text As String, ByVal Characters As String) As String
  'Trim the right
  Do While Right(Text, 1) Like "[" & Characters & "]"
    Text = Left(Text, Len(Text) - 1)
  Loop

  'Trim the left
  Do While Left(Text, 1) Like "[" & Characters & "]"
    Text = Mid(Text, 2)
  Loop

  'Return the result
  TrimChar = Text
End Function

结果:
?TrimChar("........I.wanna.delete.only.the.dots.outside.of.this.text...............", ".")
I.wanna.delete.only.the.dots.outside.of.this.text

这远未优化,但您可以对其进行扩展以计算出结束位置,然后执行单个 Mid() 调用。

关于string - 在vb6(TrimChar)中从字符串的左右删除某些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8531543/

相关文章:

c# - 在文本中查找 "x"的确切单词的实例数

regex - 删除句子末尾的所有感叹号

string - Go channel 将每个字母作为字符串而不是整个字符串

arrays - Excel VBA 用两个数组替换文本

c - 结构体数组?

c# - 在 VB6 中引用 .NET 程序集将不起作用

web-services - 使用 MSXML 拒绝访问

vb6 - 通过合并模块安装 Tabctl32 时,非管理员用户会触发 MSI self 修复

vb6 - 在VB中使用Me时的语法错误

visual-studio-2017 - 在 VS2017 中打开记录集,就像在 VB6 中打开 MS Access 表一样