PostgreSQL 正则表达式检查以拉丁字符和字母字符开头
PostgreSQL regex check start with Latin and alpha character
我必须检查 PostgreSQL 中以 alpha 开头的字符串。我用过这个:
SELECT string ~ '^([a-z]|[A-Z])'
但它不适用于以拉丁字符开头的字符串。例如:ücp.
在 Java 中,我使用这个正则表达式:
^([\pL]).*
我用 PostgreSQL 试过了,但它没有按预期工作。
如何在 PostgreSQL 中编写此正则表达式?
POSIX 字符 class [:alpha:]
依赖于语言环境并且也匹配 Unicode 字母。
使用
^[[:alpha:]]
看看 docs 怎么说:
Standard character class names are: alnum, alpha, blank, cntrl, digit, graph, lower, print, punct, space, upper, xdigit. These stand for the character classes defined in ctype. A locale can provide others.
我必须检查 PostgreSQL 中以 alpha 开头的字符串。我用过这个:
SELECT string ~ '^([a-z]|[A-Z])'
但它不适用于以拉丁字符开头的字符串。例如:ücp.
在 Java 中,我使用这个正则表达式:
^([\pL]).*
我用 PostgreSQL 试过了,但它没有按预期工作。
如何在 PostgreSQL 中编写此正则表达式?
POSIX 字符 class [:alpha:]
依赖于语言环境并且也匹配 Unicode 字母。
使用
^[[:alpha:]]
看看 docs 怎么说:
Standard character class names are: alnum, alpha, blank, cntrl, digit, graph, lower, print, punct, space, upper, xdigit. These stand for the character classes defined in ctype. A locale can provide others.