我從外部源獲得了一個路徑,我無法控制并且需要將檔案路徑存盤在我的 SQL Server 資料庫中。
檔案路徑將如下所示;
C:\\Users\\Temp\filepath\test\document.txt
我需要用所有雙反斜杠來存盤這些
C:\\Users\\Temp\\filepath\\test\\document.txt
什么是正確的替換方法\而不\\將字串變成這個
C:\\\\Users\\\\Temp\\filepath\\test\\document.txt
打電話REPLACE?
uj5u.com熱心網友回復:
這是 Gordon Linoff 前段時間演示的一個簡單技術。(不記得原帖了)
它將處理任意數量的重復字符。在這種情況下\
簡而言之,它擴展、消除并最終歸一化。
例子
Declare @S varchar(150) = 'C:\\Users\\Temp\filepath\test\document.txt'
Select replace(replace(replace(@S,'\','??'),'??',''),'??','\\')
結果
C:\\Users\\Temp\\filepath\\test\\document.txt
uj5u.com熱心網友回復:
您可以將雙倍轉換為單倍,然后將單倍轉換為雙倍。
DECLARE @Path VARCHAR(100) = 'C:\\Users\\Temp\filepath\test\document.txt'
SELECT Replace(Replace(@Path, '\\', '\'), '\', '\\')
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/422494.html
標籤:
上一篇:如何查找列不為空的表的列名
