当前位置: 首页 > news >正文

学校多语言网站建设成都装修设计培训

学校多语言网站建设,成都装修设计培训,美工做图素材网站,商城网站 后台使用正则表达式通过用例查询 Postgres 数据库: 正则表达式(又名 Regex) 正则表达式是一个强大的工具,广泛用于模式匹配和文本操作。 几乎所有编程语言都支持它们,并且经常用于文本提取、搜索和匹配文本等用例。 正则…

使用正则表达式通过用例查询 Postgres 数据库:

正则表达式(又名 Regex)

  • 正则表达式是一个强大的工具,广泛用于模式匹配和文本操作。

  • 几乎所有编程语言都支持它们,并且经常用于文本提取、搜索和匹配文本等用例。

  • 正则表达式匹配以“^”字符开头,以“$”字符结尾。

例子 

  • 假设我们要验证给定的字符串是否是有效的 Visa 信用卡号。

  • 输入字符串为“4111111111111111”。

  • 我们的正则表达式为:“4[0–9]{12}(?:[0–9]{3})?” 4[0–9]{12}:正则表达式的这一部分基本上表示该模式以 4 开头,后跟包含 (0–9) 的 12 个数字。现在总共有 13 位数字。(?:[0–9]{3}):旧的 Visa 卡有 13 位数字,因此这代表可选的 3 位数字。

现在基础知识已经清楚了,让我们讨论如何使用正则表达式进行数据库查询。

正则表达式与数据库

  • 使用正则表达式可以使 SQL 查询动态化并提高性能。

  • 在本文中,我们将使用支持正则表达式的 Postgres 数据库。

我们需要记住,并非所有数据库都支持正则表达式。
Postgres

  • 我们可以使用 ~(TILDE) 运算符和 .*(通配符运算符)来实现 PostgreSQL 中的正则表达式。

列表
~:用于匹配正则表达式的字符串,区分大小写

# 搜索所有符合模式的电子邮件
postgres=# select email from accounts where email ~ '^\S+@\S+\.\S+$';

2. !~:用于字符串,不匹配正则表达式,区分大小写。

# 搜索所有与模式不匹配的电子邮件
postgres=# select email from accounts where email !~ '^\S+@\S+\.\S+$';

3. ~*:用于字符串匹配正则表达式,不区分大小写。

# s以不区分大小写的方式搜索与模式匹配的所有电子邮件
postgres=# select email from accounts where email !~ '^\S+@\S+\.\S+$';

4. !~*:用于不匹配正则表达式的字符串,不区分大小写。

# 搜索所有与模式不匹配的邮件,不区分大小写
postgres=# select email from accounts where email !~ '^\S+@\S+\.\S+$';

用例:通过品牌名称查找信用卡

  • 我们的输入表是credit_card,其中包含卡号和到期日期。

表中记录:

postgres=# select * from credit_card;
id |   card_number    | expiry_date | customer_id
----+------------------+-------------+-------------
11 | 2344323432112222 | 2023-04-10  |          10
10 | 2344323432112422 | 2023-04-12  |          10
13 | 4111111111111111 | 2023-04-11  |          10
14 | 4111111131111111 | 2023-05-11  |          10
15 | 4111111131119111 | 2023-05-12  |          10
17 | 378282246310005  | 2023-05-09  |          10
18 | 378282246710005  | 2024-05-09  |          10
21 | 4111111131119    | 2025-05-12  |          10
(8 rows)

查询Visa信用卡 
postgres=# select * from credit_card where card_number ~ '^4[0-9]{12}(?:[0-9]{3})?$';

  • Visa信用卡均以4开头,旧卡为13位,新卡为16位。
  • 我们的查询返回预期的 4 张以 4 开头的卡片。

美国运通:
postgres=# select * from credit_card where card_number ~ '^3[47][0-9]{13}$';

  • 所有Amex信用卡均以3开头,第二位数字为4或7。总数字为15。
  • 我们的查询返回预期的 3 个结果。

用例:查找所有与 emailId 模式不匹配的电子邮件

在正则表达式中,我们正在寻找characters@characters.character(例如abc@gmail.com)模式。
我们正在过滤所有不符合模式的电子邮件的查询。

select email from accounts where email !~ '^\S+@\S+\.\S+$';

我们的输出包含不具有上述定义模式的电子邮件。

postgres=# select email from accounts where email !~ '^\S+@\S+\.\S+$';
email
-------------
abctest.com
(1 row)

https://www.jdon.com/70336.html

http://www.yayakq.cn/news/144586/

相关文章:

  • 好看的学校网站模板小程序免费制作平台 知乎
  • 注册网站商标多少钱h5页面怎么制作app有哪些
  • 建设银行网站的登录验证程序安全吗专业网络营销外包公司
  • 网站pv统计方法昆明市城乡建设局网站
  • 镇江网站设计多少钱城乡建设网站职业查询系统
  • 家居企业网站建设效果网站建设平台官网要点有哪些
  • 网站开发工具介绍阿里巴巴网站开发是谁
  • 公司网站建设推进表百度搜索网站的图片
  • 化学试剂网站建设做网站销售好吗
  • 免费收录网站推广云南外贸建站推广
  • 始兴建设局网站徐州建设工程监理
  • 广州哪家做网站兼职建设网站
  • 网站建设开发公司有哪些网站小程序app开发
  • 东莞电商网站公司网站建设的完整流程包括
  • wordpress 电子商务网站seo的方法
  • 网站设计大小wordpress 可视化表格
  • 如何设计网站风格网站开发 附加协议
  • 南宁网站建设公司排名南昌优化排名推广
  • 免费北京网站建设上海加盟网网站建设
  • 网站优化具体怎么做免费的网站托管
  • 网站广告是文化事业建设费天晴创艺网站建设百度小程序
  • 周到的网站建站自适应网站开发文字大小如何处理
  • 外贸网站运营推广百度引流推广哪家好
  • 牛商网建设的食品网站电影点播网站开发费用
  • 北京装饰公司设计手机优化不到80怎么办
  • 最好的完全免费开源企业网站广告公司网站设计方案
  • 如何免费注册网站域名网站上微信的链接怎么做
  • 网站设置始终请求电脑版湖南人文科技学院怎么样
  • asp网站怎么连接数据库广州营销策划公司排名
  • 名表网站做网站不推广有效果吗