2014-03-26 51 views
1

我正在尋找一個可以匹配/選擇除字符串前三個字符(包括空白)以外的所有其他RegEx。也就是說,從第4個字符開始選擇,如果沒有第4個(或第3個或第2個)字符,則不會匹配。 EX1。使用RegEX跳過前3個主要字符

EX1。給定的字符串: 「ABC公司」

正則表達式應該與 「公司」

EX2。給定的字符串: 「JASON的油畫」

正則表達式應該匹配 「ON的油畫」

EX3。給定字符串「AB」

RegEX不應該匹配任何內容。

我已經能夠想出一個表達式,只匹配第一個字符^.{3}\s*,但這是我所需要的倒置。

這不是在任何編程語言中使用,所以我不能使用字符串操作。對於上下文,這是使用Oracle的企業數據質量RegEX替換處理器。

在此先感謝。

+0

你到底想要做什麼?爲什麼'SUBSTR'不會更合適? – Jerry

回答

3

我不知道Oracle's Enterprise Data Quality RegEX Replace processor是否支持Lookaround。但這裏是通常的正則表達式,如果它支持:

(?<=^...)(.*) 

這裏使用正回顧後(?<=^...)被檢查的匹配是從開頭的三個字符之後。

Online Demo

+0

我很驚訝它確實支持周圍的環境,但確實如此。你發佈的第一個正則表達式工作完美。非常感謝您的幫助! – Strzelec

1

我用正則表達式是菜鳥,但嘗試:(?<=.{3}).+

括號中的部分是一個積極的回顧後 - 它放棄了比賽,只返回匹配後記是否是可能的不。 。+符號表示必須至少有一個字符。如果您知道所有字符都是單詞字符(0-9 a-z A-Z和下劃線)或空格,我建議用[\ w \ s]替換後面的點。