SET
ANSI_NULLS ON GO
SET
QUOTED_IDENTIFIER ON GO CREATE FUNCTION Priority_Heb (
@NAME VARCHAR(300)
) RETURNS VARCHAR(300) AS BEGIN DECLARE @POS INT DECLARE @HebrewWord varchar(200) DECLARE @EnglishWord Varchar(200) DECLARE @NewName Varchar(200) DECLARE @Found int -- initialazation
set
@HebrewWord = ''
set
@EnglishWord = ''
set
@Found = 0
set
@NewName = ''
set
@NAME = ltrim(
Rtrim(@NAME)
)
SELECT
@POS = 1 WHILE @POS <= LEN(@NAME) --2
BEGIN if (
ASCII(
SUBSTRING(@NAME, @POS, 1)
) <> 32
) begin IF (
ASCII(
SUBSTRING(@NAME, @POS, 1)
) < 224
) begin
SELECT
@NAME = STUFF(
@NAME,
@POS,
1,
CHAR(
ASCII(
SUBSTRING(@NAME, @POS, 1)
)
)
)
set
@EnglishWord = @EnglishWord + SUBSTRING(@NAME, @POS, 1)
set
@Found = 0 --set @HebrewWord = ''
--end if
end else begin
set
@HebrewWord = @HebrewWord + SUBSTRING(@NAME, @POS, 1)
set
@Found = 1 --set @EnglishWord = ''
--end else
end
set
@NewName = reverse(@EnglishWord) + ' ' + @HebrewWord IF SUBSTRING(@NAME, @POS, 1)= '''' begin
SELECT
@NAME = STUFF(@NAME, @POS, 1, '`') --end if
end --end if (ASCII(SUBSTRING(@NAME,@POS,1)) <> 32)
end else begin
set
@EnglishWord = @EnglishWord + ' '
set
@HebrewWord = @HebrewWord + ' ' --end else
end
SELECT
@POS = @POS + 1 --end while @POS <= LEN(@NAME)
END RETURN (
ltrim(
rtrim(@NewName)
)
) END GO