微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正则表达式搜索子串

如何解决正则表达式搜索子串

假设我有一个Michael is studying at the Faculty of Economics at the University

这样的字符串

我需要检查给定的字符串是否包含以下表达式:Facul* of Econom*

星号暗示这个词可以有很多不同的结尾

总的来说,我的目标是在 clickhouse 数据库的表中找到相似的表达式。如果您提出解决此问题的其他选择,我将不胜感激

解决方法

使用任意数量的“word”字符作为词尾和前面的“词边界”:

\bFacul\w* of Econom\w*

也要考虑不区分大小写:

(?i)\bfacul\w* of econom\w*
,

如果您想匹配两个单词后面的任何小写字母,请使用:

\bFacul[a-z]* of Econom[a-z]*\b

如果您想匹配两个单词后面的任何可选字母,请使用:

\bFacul[A-Za-z]* of Econom[A-Za-z]*\b

说明:

  • \b - 词边界
  • Facul - 文字
  • [A-Za-z]* - 0 到多个 alpha 字符
  • of - 文字
  • Econom - 文字
  • [A-Za-z]* - 0 到多个 alpha 字符
  • \b - 词边界

如果你想对大写/小写和空格更宽容,请使用:

\b[Ff]acul[A-Za-z]* +of +[Ee]conom[A-Za-z]*\b

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。