Replace only last occurrence of match in a string in VBA

后端 未结 3 1698
不知归路
不知归路 2020-12-10 07:51

I have a string like this

\"C://Documents/TestUser/WWW/Help/Files/Move_Help.txt\"

and have to replace Move_Help.txt

3条回答
  •  醉酒成梦
    2020-12-10 08:29

    There's a one-line solution for this:

    rlpStr = StrReverse(Replace(StrReverse(str), StrReverse("Help"),  StrReverse("Job"), , 1))
    

    Technically, it's slightly less efficient than combining InStr and Replace but it can be used inside another expression if you need to. Also, I like the one-line solutions so long as they're not incomprehensible.

提交回复
热议问题