Я использую следующую функцию для удаления лишних нецифровых символов из столбца.Функция SQL Server UDF должна удалить числа после десятичного числа
ALTER Function [dbo].[fnRemoveNonNumericCharacters](@strText VARCHAR(1000))
RETURNS VARCHAR(1000)
AS
BEGIN
WHILE PATINDEX('%[^0-9]%', @strText) > 0
BEGIN
SET @strText = STUFF(@strText, PATINDEX('%[^0-9]%', @strText), 1, '')
END
RETURN @strText
END
но если значение 99.35
, это делает его 9935
, но я хочу, чтобы это было 99
Может кто-нибудь наставит меня, что я не хватает в регулярном выражении. и я не уверен, что он покрывает пространства тоже или нет.
Просто добавьте '. .'' в символы, которые разрешены. –
u ean как этот '[^ 0-9.]' –
, если я делаю это выше, он просто сохраняет десятичные знаки как '99.35' –