regex - PostgreSQL 正则表达式检查以拉丁字符和字母字符开头

标签 regex latin

我必须检查 PostgreSQL 中以 alpha 开头的字符串。我用的是这个:

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

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

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

    ^([\pL]).*

我在 PostgreSQL 上尝试过,但它没有按预期工作。

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

最佳答案

POSIX 字符类 [: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.

关于regex - PostgreSQL 正则表达式检查以拉丁字符和字母字符开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40717593/

相关文章:

hadoop - pig 脚本STRSPLIT

具有递归支持的 Java 正则表达式库

Python:使用拉丁字符对 URL 进行 URL 编码

hadoop - 学习像在PIG Latin中使用正则表达式一样使用perl。

javascript - Antd 通过模式验证不会触发错误

java - Java 中拉丁字符的 URL 编码

hadoop - Pig Latin - foreach generate 方法在没有第一个字段的情况下不起作用

java - java中的正则表达式派生文件中行的前几个字符并将其用作文件名

ruby - 用于匹配一组大括号之间的所有单词的正则表达式

正则表达式:匹配第 n 次出现