2016-11-21 803 views
1

我必须在PostgreSQL中检查字符串开头的字母。我用这个:PostgreSQL正则表达式检查以拉丁字母和字母字符开头

SELECT string ~ '^([a-z]|[A-Z])' 

但它不起作用的字符串以拉丁字符开头。例如:ücp。

在Java中,我用这个正则表达式:

^([\pL]).* 

我想它在PostgreSQL,但预期它不工作。

如何在PostgreSQL中编写此正则表达式?

+0

如果使用'^ [[:alpha:]]'会怎么样? –

+0

谢谢!我的工作就像一个魅力! –

回答

1

POSIX字符类[:alpha:]是区域设置相关的,并且也匹配Unicode字母。

使用

^[[:alpha:]] 

见什么docs说:

标准字符类的名字有:alnum,alpha或空白,CNTRL,数字,图形,低,打印,PUNCT,空间,上,xdigit。这些代表ctype中定义的字符类。一个区域可以提供其他区域。

相关问题