讓我們假設:功能在SQL Server
@RowStr
是輸入@wordstr
是一個字符串....我已經收集了阿拉伯字母
我現在的目標是檢查這個wordstr的Rowstr數據。
例如:pubby
每個字母必須在wordstr中檢查。如果任何字母將與單詞str匹配,我將聲明輸入數據是阿拉伯語。任何人都可以檢查我的功能給我一個建議嗎?
ALTER FUNCTION [dbo].[Checking_Arabic_English]
(
– Add the parameters for the function here
@RowStr nvarchar(1000)
)
RETURNS Char
AS
BEGIN
declare @WordStr varchar
set WordStr = "ضصثقفغعهخحجدشسيبلاتنمكطئءؤرلاىةوزظذًٌَُلإإٍِلأأْلآآ؟ـ؛،٬"
declare @WordCount int
declare @index int
set @index =0
set @WordCount = 0
while CHARINDEX(@WordStr, @RowStr,@index)>0
begin
SET @index = CHARINDEX(@WordStr,@RowStr,@index)
SET @WordCount = @WordCount + 1
if @index =0
break
else
SET @index = @index + 1
end
if @WordCount = 0
return = 'E'
else
return = 'A'
END
這是你的目標,以獲取在@RowStr所有字符都在您的白名單@WordStr,或只是測試的英文字符的存在? – 2011-04-21 04:22:09
yes campbell ...首先從@rowstr中獲取所有字符,然後我需要檢查每個字符並且必須與@wordstr進行比較...以便我可以更新字符串,無論是以英語還是阿拉伯語爲基礎,通過基於wordcount返回值如果它的域名是英文的,那麼itz阿拉伯語 – pubby 2011-04-21 04:26:06
@pubby:你已經描述了你的實現:)業務需求是什麼:是否需要將有效字符列入白名單,或者你可以將英文/拉丁字母黑名單? – 2011-04-21 04:30:40