如何计算字符串中子字符串的出现次数?
答案 0 :(得分:6)
从版本11g开始,regexp_count
将执行此操作。
select regexp_count('abba', 'b') from dual;
2
select regexp_count('abba', 'b+') from dual;
1
答案 1 :(得分:1)
在11g之前的版本中,您可以:
select (length(string) - length(replace(string,substring,''))) / length(substring) as occ
from dual;
我们的想法是看看字符串中有多少空间被子字符串占用,然后,看看子字符串在该空间中的次数除以子字符串的长度。