漂亮的字符串操作

Mic*_*ein 5 regex vb.net string vb6 vba

我有以下字符串,我希望从中提取部分:

<FONT COLOR="GREEN">201 KAR 2:340.</FONT>
Run Code Online (Sandbox Code Playgroud)

在这种特殊情况下,我希望提取数字201,2和340,我稍后将使用它来连接以形成另一个字符串:

http://www.lrc.state.ky.us/kar/201/002/340reg.htm

我有一个解决方案,但它不易阅读,而且看起来相当笨重.它涉及使用mid函数.这里是:

intTitle = CInt(Mid(strFontTag, 
                    InStr(strFontTag, ">") + 1, 
                    (InStr(strFontTag, "KAR") - InStr(strFontTag, ">")) 
                           - 3))
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更好的方法来完成这项任务.我意识到我可以制作一些描述性的变量名,比如intPosOfEndOfOpeningFontTag来描述第一个InStr函数的作用,但它对我来说仍然很笨拙.

我应该使用某种分离功能,或正则表达式,还是一些我还没有遇到的更优雅的方式?多年来我一直以这种方式操纵琴弦,我觉得必须有更好的方法.谢谢.

Ωme*_*ega 1

正则表达式模式:<FONT[^>]*>.*?(\d+).*?(\d+).*?(\d+).*?<\/FONT>