如何解决正则表达式搜索子串
假设我有一个像 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 举报,一经查实,本站将立刻删除。