为什么不能计算字符串中的管道字符?

Bla*_*ail 1 regex sql oracle pipe

select Values, REGEXP_COUNT(values,'|') from Products 
Run Code Online (Sandbox Code Playgroud)

样本值单元格:

Product|Cash|Loan|Customer
Run Code Online (Sandbox Code Playgroud)

选择的结果是27。如果算其他字符,它可以工作,但是如果我要算| 它计算整个字符串。为什么,如何计数管道?

kab*_*nus 5

那是因为|在正则表达式中有特殊的含义。如果希望将它们阅读为普通字符,则需要使用对其进行转义\|