gpt4 book ai didi

sql - 用于完整单词匹配的 REGEX

转载 作者:行者123 更新时间:2023-12-01 07:29:47 27 4
gpt4 key购买 nike

好的所以我很困惑(显然)

我正在尝试返回行(来自 Oracle),其中文本字段包含完整的单词,而不仅仅是子字符串。

一个简单的例子是“我”这个词。

向我显示字符串包含单词“I”的所有行,但不仅仅是像 '%I%' 中那样“I”是某个地方的子字符串的地方

所以我写了我认为是一个简单的正则表达式:

select REGEXP_INSTR(upper(description), '\bI\b') from mytab;

期望我应该被单词边界检测到。我没有得到任何结果(或者说每一行的结果都是 0。

我的期望:
  • '我是管理员' -> 1
  • '我是管理员' -> 0
  • “我是管理员吗”-> 1
  • '这是臭名昭著的管理员'-> 0
  • '管理员,是我' -> 1

  • /b 不是应该通过单词边界找到包含的字符串吗?

    蒂亚

    最佳答案

    我相信您的正则表达式不支持\b :

    http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14251/adfns_regexp.htm#i1007670

    因此,您可以执行以下操作:

    (^|\s)word(\s|$)

    至少确保您的“单词”由一些空格分隔,或者是整个字符串。

    关于sql - 用于完整单词匹配的 REGEX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7916422/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com