len*_*hun 3 postgresql pattern-matching
我正在使用 PostgreSQL,想知道是否可以让通配符保留其值。
\n\n例如说我有
\n\nselect * from tableOne where field like \xe2\x80\x98_DEF_\xe2\x80\x99;\nRun Code Online (Sandbox Code Playgroud)\n\n有没有办法让第一个和最后一个通配符成为完全相同的字符?
\n\n因此,匹配结果示例可以是:ADEFA 或 ZDEFZ。
\n小智 5
您可以使用带有反向引用的正则表达式:
select *
from some_table
where some_column ~* '^(.)DEF(\1)$'
Run Code Online (Sandbox Code Playgroud)
^(.)DEF(\1)$意思是:开头的某个字符后面DEF跟着的第一个字符必须出现在字符串的末尾。
定义()一个组并\1引用第一组(在本例中是输入序列中的第一个字符)
SQLFiddle 示例:http://sqlfiddle.com/#!15/d4c4d /1
| 归档时间: |
|
| 查看次数: |
99 次 |
| 最近记录: |