2
我應該從地址字段中刪除以下內容。查找並替換SQL Server 2005中的字符串
- 將所有名爲'Flat'的單詞替換爲空白,同時刪除伴隨它的數字。
例如,我有一個名字叫'Flat 234 5th Street'。
它應該被替換爲第5街。
我把查詢作爲
select
ltrim(rtrim(substring ('Flat 123 5th Street', charindex('Flat ','Flat 123 5th Street') + 5, len ('Flat 123 5th Street'))))
它返回
123街5號
現在,我必須找到是否直至空間的下一次出現,我有一個數值或不是。
如果數字,然後刪除它,否則離開它。
任何人都可以幫忙。
問候, 喝罵
是Marc_S,我不該那麼做(編輯)。 我無法用其他語言做。假設僅在T-SQL中執行。
嗨LittleBobbyTales,謝謝你的答案。 其實它不是一個標準的格式,我可能只有 平123
或平123五街1號主道
或1主平1
沒有規則,我們將有1號或Flat後的2個數字。 可能有也可能沒有數字。
它可以是任何一種方式。
如果您發佈的代碼或XML,** **請在高亮文本編輯器的線,然後點擊在編輯器工具欄上的「代碼」按鈕(101 010)上進行很好的格式化和語法突出顯示! – 2010-10-16 14:56:17
聽起來像一個正則表達式的完美匹配 - 不幸的是,SQL Server的T-SQL查詢語言在字符串操作/正則表達式匹配中並不是非常強大。你最好用像C#這樣的傳統編程語言來做這件事...... – 2010-10-16 15:02:55
同意marc_s,但出於好奇,你能否給出更多你需要解析的地址字段的例子? – LittleBobbyTables 2010-10-16 15:22:37