从两个特殊字符(如 VBA 中的 ^abc^)之间的字符串中获取子字符串



我有一个带有 2 个文本框和命令按钮的表单。我想在 VBA 中做的是在按下按钮时将部分文本从text1复制到text3 cmd。例如,要复制到text3的字符串#&!4848484848484 ^totot/euhen^ gjrlsmdkkkd text1的一部分是totot/euhen,所以之前没有固定的数字或位置,不知何故它必须以^符号为基础。即 text3 = 介于 ^^ 之间的任何值。

最简单的方法是使用Split函数,将以下代码添加到用户表单中:

Private Sub CommandButton1_Click()
    Dim aTmp
    aTmp = Split(TextBox1.Value, "^", 3)
    If UBound(aTmp) = 2 Then TextBox3.Value = aTmp(1)
End Sub

该代码按字符拆分源文本^并将部分放在数组中。数组长度限制为 3 个元素,索引为 0..2。因此,示例字符串#&!4848484848484 ^totot/euhen^ gjrlsmdkkkd被拆分为#&!4848484848484totot/euhengjrlsmdkkkd数组。然后检查数组是否有 3 个元素,这意味着找到了 2 个^个字符,要捕获的文本位于第二个元素中。

最新更新