Иногда его проще без регулярного выражения.
>>> s = '''Lun: 0 1 2 3 295 296 297 298'''
>>> if "Lun: " in s:
... items = s.replace("Lun: ","").split()
... for n in items:
... if n.isdigit():
... print n
...
0
1
2
3
295
296
297
298
Я думаю, что 2 вызова обновления должны сделать
update VersionedFields
set Value = replace(value,'<iframe','<a><iframe')
update VersionedFields
set Value = replace(value,'> </iframe>','</a>')
update VersionedFields
set Value = replace(replace(value,'<iframe','<a>iframe'), '> </iframe>','</a>')
и Вы делаете это в единственной передаче.
Я рассмотрел бы запись функции замены CLR с поддержкой RegEx этого вида обработки строк.
Можно сделать это с оператором UPDATE, устанавливающим значение с ЗАМЕНОЙ
UPDATE
Table
SET
Column = Replace(Column, 'find value', 'replacement value')
WHERE
xxx
, Вы захотите быть чрезвычайно осторожными при выполнении этого! Я настоятельно рекомендую выполнение резервного копирования сначала.