Как удалить все, что не является числом, из необработанного строкового ввода в SQL Server 2005 или 2008 - PullRequest
1 голос
/ 28 февраля 2012

Есть ли эффективный способ использования sql server 2005 для удаления всех символов в строке, как эта, которые не являются числами?

TEXT T EXT TEXT 2345 TEXT SDTE

Я думал, что может быть способ объединить оператор замены срегулярное выражение.

1 Ответ

1 голос
/ 28 февраля 2012

Вот ответ на связанный вопрос с небольшим изменением, необходимым для удаления не чисел, в отличие от не-альфа:

Create Function [dbo].[RemoveNonNumericCharacters](@Temp VarChar(1000))
Returns VarChar(1000)
AS
Begin

    While PatIndex('%[^0-9]%', @Temp) > 0
        Set @Temp = Stuff(@Temp, PatIndex('%[^0-9]%', @Temp), 1, '')

    Return @Temp
End
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...