我必须在pl/sql中的较大的字符串中找到字符串的位置。较大的字符串在较大的字符串中的位置
可以说这个字符串是:'allthebest all the best' 只有当它是一个单独的单词而不是字符串的一部分时,我必须得到字符串“the”的位置。 在上面的例子中,单词“the”的位置应该是16,对应于独特的单词而不是4。不应该考虑“allthebest”中单词“the”的出现。
尝试这样:
select regexp_instr('allthebest all the best',' the ') from dual;
Ofcourse,它工作时,有一个空间前述并按照单词 “the”。 但是,对于字符串为'allthebest all best the'的情况不起作用(注意:'the'后面没有尾随空格)
如何使它只能查找独立词汇在一个输入字符串中,它本身不是pl/sql中较小字符串的一部分?
感谢詹姆斯。有用。但是,我想了解你是如何抵达它的。你能指出我对这里的这些正则表达符号代表了什么以及如何应用这些符号以便我能够理解它们并开始使用它们?当我谷歌这些,我迷路了很多材料,我不知道哪一个会给最好的信息。现在,说实话,他们看起来像是一群人物,对我来说是一个未经训练的眼睛! – Casey 2014-08-28 19:45:11
如果单词“the”是pl/sql代码中的变量,该怎么办? Append在这里似乎不起作用:'([^ [:alpha:]] | ^)|| <要搜索的变量字符串> || ([^ [:alpha:]] | $)' – Casey 2014-08-28 19:54:19
@Casey:这是我使用的语法:http://www.sqlsnippets.com/en/topic-10764.html – 2014-08-28 20:03:25