У меня есть таблица, подобная следующей, в SQL Server 2016:
CREATE TABLE #SampleValues (TextID INT, Comment VARCHAR(MAX) )
INSERT INTO #SampleValues (TextID, Comment)
SELECT 1, 'user 1 has done crosswalk 99220 to 99215 and submitted' UNION
SELECT 2, 'got update that crossedwalked 99308 to 99221' UNION
SELECT 3, '99255 CROSSWALKED TO 99223' UNION
SELECT 4, 'proposed crosswalk 99219 to 99214 and clean' UNION
SELECT 5, 'tested and confiimed cross walked code from 99223 to 99255' UNION
SELECT 6, 'User 2 Crosswalked codes change 99254 to 99222' UNION
SELECT 7, 'User3cross walked code from 99232 to 99307'
SELECT 8, 'Updated to 99307'
Ожидаемый результат будет похож на скриншот ниже.
![enter image description here](https://i.stack.imgur.com/LnysH.png)
Ожидается, что значения комментариев будут в одном из следующих форматов (без учета регистра). Если он не соответствует этим форматам, ожидаемый результат будет NULL
<some_pre-text>crossedwalked Number1 to Number2<some_post-text>
<some_pre-text>crosswalk Number1 to Number2<some_post-text>
<some_pre-text>crosswalk Number1 to Number2<some_post-text>
<some_pre-text>Crosswalked codes change Number1 to Number2<some_post-text>
<some_pre-text>cross walked code from Number1 to Number2<some_post-text>
<some_pre-text>cross walked code from Number1 to Number2<some_post-text>
<some_pre-text>Number1 CROSSWALKED TO Number2<some_post-text>
Я нашел несколько простых примеров регулярных выражений - но не нашел примеров того, как достичь этих сложных форматов. Есть мысли о том, как сделать это сложное регулярное выражение?