Regex T-SQL正则表达式从字符串中选择电子邮件

Regex T-SQL正则表达式从字符串中选择电子邮件,regex,tsql,Regex,Tsql,表中有一列包含如下字符串- “执行作者的电子邮件是john。dio@pluto.com,ref@4567…” 我只需要从字符串中获取电子邮件。我一直在使用名为editpad pro的伟大软件轻松地完成这项工作,但现在我处理了大约1000万条记录,没有一个编辑器支持这种卷 如何在2008年编写T-SQL来选择正则表达式匹配值? 查找有效电子邮件的正则表达式是“\b[A-Z0-9.\uz0%+-]*@[A-Z0-9.-]+[A-Z]{2,4}\b” 非常感谢。您可以使用grep从大量文本中提取所有匹

表中有一列包含如下字符串- “执行作者的电子邮件是john。dio@pluto.com,ref@4567…”

我只需要从字符串中获取电子邮件。我一直在使用名为editpad pro的伟大软件轻松地完成这项工作,但现在我处理了大约1000万条记录,没有一个编辑器支持这种卷

如何在2008年编写T-SQL来选择正则表达式匹配值? 查找有效电子邮件的正则表达式是“\b[A-Z0-9.\uz0%+-]*@[A-Z0-9.-]+[A-Z]{2,4}\b”


非常感谢。

您可以使用
grep
从大量文本中提取所有匹配项:

grep <regexp> <filename>
grep

在Windows上运行
grep
的一个简单方法是下载Git的版本。

您可以使用
grep
从大量文本中提取所有匹配项:

grep <regexp> <filename>
grep

要在Windows上运行
grep
,一个简单的方法是下载Git的版本。

SQL Server本机不支持正则表达式-您必须使用CLR功能来扩展SQL Server 2005+的功能,例如regex支持。提供可部署的程序集,但大多数商店不允许CLR

可能会有帮助,但已经有了


如果您需要获取一个值,您应该将其存储在它自己的列中,而不是文本中的某个位置。

SQL Server本机不支持正则表达式-您必须使用CLR功能来扩展SQL Server 2005+的功能,例如正则表达式支持。提供可部署的程序集,但大多数商店不允许CLR

可能会有帮助,但已经有了


如果您需要获取一个值,您应该将其存储在它自己的列中,而不是文本中的某个位置。

我认为您可能会找到比tsql更有效的方法,但如果您可以使用该工具,有些函数只使用tsql函数和ole自动化来创建正则表达式支持。

我认为您可能会找到比tsql更有效的方法来实现这一点,但是如果您可以使用这个工具,有些函数只使用tsql函数和ole自动化来创建正则表达式支持