Once way is using regular expressions. Another way is using Split to split the strings on various delimiters Eg
Option Explicit
Sub splitMethod()
Dim Str As String
Str = Sheet1.Range("A1").Value
Debug.Print Split(Str, """")(1)
Debug.Print Split(Split(Str, ">")(1), "</a")(0)
End Sub
Sub RegexMethod()
Dim Str As String
Dim oRegex As Object
Dim regexArr As Object
Dim rItem As Object
'Assumes Sheet1.Range("A1").Value holds example string
Str = Sheet1.Range("A1").Value
Set oRegex = CreateObject("vbscript.regexp")
With oRegex
.Global = True
.Pattern = "(href=""|>)(.+?)(""|</a>)"
Set regexArr = .Execute(Str)
'No lookbehind so replace unwanted chars
.Pattern = "(href=""|>|""|</a>)"
For Each rItem In regexArr
Debug.Print .Replace(rItem, vbNullString)
Next rItem
End With
End Sub
'Output:
'http://www.nbc.com/xyz
'I love this show
This matches href=" or > at the start of the string, " or </a> at the end of the string with any character (except \n newline) in between (.+?)