@someData =
SELECT * FROM
(VALUES
("tic tac-toe")
) AS T(col1);
DECLARE @pattern string = "\\s|-";
@result =
SELECT col1 AS original,
Regex.Replace(col1, "\\s", "_") AS regex_replaceSpace,
Regex.Replace(col1, "-", "_") AS regex_replaceHypen,
Regex.Replace(col1, "\\055", "_") AS regex_replaceHypenDecimal,
Regex.Replace(col1, "\\s|-", "_") AS regex_replaceBoth,
Regex.Replace(col1, @"\s|-", "_") AS regex_replaceBoth_verbatim,
Regex.Replace(col1, @pattern, "_") AS regex_replaceBoth_pattern,
col1.Replace(" ", "_") AS string_replaceSpace,
col1.Replace("-", "_") AS string_replaceHypen,
col1.Replace("-", "_").Replace(" ", "_") AS string_replaceBoth
FROM @someData;
OUTPUT @result
TO "/Replace.csv"
USING Outputters.Csv(outputHeader: true);
나는 당신이'gsub (var1, "\\ s + | -", "_")'을 의미한다고 생각합니다. REGEXP_REPLACE 함수가 없습니까? –
내장되어 있는지는 모르지만 .NET. System.Text.RegularExpressions.Regex.Replace (src, pattern, repl) '를 사용할 수있는 것처럼 보입니다. –
CLR을 사용하여 자신의 어셈블리를 정의 할 수 있습니다. 요점 [여기] (https://web.archive.org/web/20111230084415/http://msdn.microsoft.com/en-us/magazine/cc163473.aspx). 참고 : Azure SQL이 괜찮습니까? – PJProudhon