T SQL中的正規表示式

2021-04-17 07:57:02 字數 1881 閱讀 9400

t-sql中的正規表示式

將這個udf儲存到你的資料庫中,並確定有授權來執行它。當然,你也得確保執行它的人有執行sp_oa***xx類擴充套件儲存過程的許可權。

這個函式已確保正常執行,並且即便是和com物件一起使用,也還是挺快的。

舉例使用正規表示式的乙個地方就是測試特殊字元。我們不搜尋所有的特殊字元,而是查詢正常字元的匹配項,例如字母和空格。我們看看它的執行。

declare @intlength as integer

declare @vchregularexpression as varchar(50)

declare @vchsourcestring as varchar(50)

declare @vchsourcestring2 as varchar(50)

declare @bithasnospecialcharacters as bit

-- 初始化變數

set @vchsourcestring = 'test one this is a test!!'

set @vchsourcestring2 = 'test two this is a test'

-- 我們的正規表示式應該類似於

-- [a-za-z ]{}

-- 如: [a-za-z ]  ...  乙個十字元的字串

-- 獲得字串長度

set @intlength = len(@vchsourcestring)

-- 設定完整的正規表示式

set @vchregularexpression = '[a-za-z ]'

-- 是否有任何特殊字元

set @bithasnospecialcharacters = dbo.find_regular_expression(

@vchsourcestring, @vchregularexpression,0)

print @vchsourcestring

if @bithasnospecialcharacters = 1 begin

print 'no special characters.'

end else begin

print 'special characters found.'

endprint '---'

-- 獲得字串長度

set @intlength = len(@vchsourcestring2)

-- 設定完整的正規表示式

set @vchregularexpression = '[a-za-z ]'

-- 是否有任何特殊字元

set @bithasnospecialcharacters = dbo.find_regular_expression(

@vchsourcestring2, @vchregularexpression,0)

print @vchsourcestring2

if @bithasnospecialcharacters = 1 begin

print 'no special characters.'

end else begin

print 'special characters found.'

endgo

the results for this example would be:

本例的結果應該是:

test one this is a test!!

special characters found.

---test two this is a test

no special characters.

結論:正如你所見,這是乙個簡單技巧,在特定的場合得到了非常有用的結果。你作為乙個t_sql開發人員,可以在正規表示式庫vbscript.regexp中使用和擴充套件這個技巧。

sql正規表示式 SQL中的正規表示式

sql正規表示式 sql中的正規表示式 sql的查詢語句中,有時會需要引進正規表示式為其複雜搜尋指定模式。下面給出一些 regexp 在mysql 語句中應用 非全部 1 匹配字串的開始部分。mysql select fo nfo regexp fo 0mysql select fofo regex...

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...