2012-10-07 30 views

回答

8

您已經確定了正確的功能,但看起來您不知道如何制定正則表達式。在Oracle的背景下,您應該閱讀一般意義上的正則表達式。有不同的正則表達方言,但是一旦你學習了一種方言,它應該很容易切換到其他方面。

爲了您的Oracle特定的問題:

select * from movies where regexp_like(title, '[aeiou]{2}'); 
+1

我認爲「。*」是不必要的。如果表達式位於字符串內的任何位置,則正則表達式應匹配。 – eaolson

+0

@eaolson - 你是對的,謝謝。我編輯了更簡單形式的答案。我的想法是想着標準的LIKE運算符必須匹配整個字符串。 – dbenham

+0

在我看來,這應該工作,但我沒有得到任何回報,令人費解 – Proxy

0

這隻會爲MS-SQL工作。如果有人需要,留下答案。

where title like '%[aeiou][aeiou]%' 
+0

什麼樣的Oracle語法的是什麼?我99%肯定無法工作,但幾年來我一直與甲骨文脫節。我很想投票。 – dbenham

+0

是的,這是Oracle的通配符運算符%和regexp的混合。 – eaolson

+0

@dbenham我認爲這是寫這種語法的一種標準方式。它適用於ms-sql。我現在意識到它不適用於Oracle –