需要一个正则表达式解决方案以仅从列中选择字符串模式。

数据如下所示:

Column1
Data Type = String

Data =
"130 - 66||109,118 - 3||102 - 18||109,118 - 2||109,116,149 - 14||141 - 8||130 - 31||102 - 12"


预期结果

66, 3, 18, 2, 14, 8, 31, 12


尝试过REgex-"\-(...*?)\W",但不起作用。

最佳答案

你可以试试这个

SELECT REPLACE(REGEXP_REPLACE('130 - 66||109,118 - 3||102 - 18||109,118 - 2||109,116,149 - 14||141 - 8||130 - 31||102 - 12',
                                     '(([,0-9]+) - )', ''),'||',',');


和结果

66,3,18,2,14,8,31,12


Referance

08-19 00:59