Вам не нужно экранировать косую черту в шаблонах регулярных выражений CFML.Так что возьмите то, что есть у Маски, и используйте любой метод, который вы предпочитаете (оба они работают, только если строка действительно совпадает):
<code><cfset ytID = '<img src="http://img.youtube.com/vi/0Z3jyvM0jZc/2.jpg" alt="" />'>
<cfoutput>
<pre>
<cfset sLenPos=REFind("/vi/([^/]+)", ytID, 1, "True")>
#mid(ytID, sLenPos.pos[2], sLenPos.len[2])# == OZ3jyvM0jZc
#reReplace(ytID,".*/vi/([^/]+)/.*", "\1")# == OZ3jyvM0jZc
Ключ к сохранению этогопросто использовать [^/]+
для соответствия одному или нескольким символам, которые не /