0
我需要你的善意幫助來解決這個問題。正則表達式,真是麻煩!
我聲明我不能在Oracle PL/SQL中使用regolar表達式,但我保證我會盡快研究它們!
請假設您有一個名爲MY_COLUMN的類型爲VARCHAR2(4000)的列的表。
這colums填充如下:
Description of first no.;0;Description of 2nd number;91399399119;Third Descr.;13456
你可以看到串由幾個數字(這可能與零開頭)組成,和字符串(包含所有字母數字字符,並且還點, 」,/,\,等等):
Description1;Number1;Description2;Number2;Description3;Number3;......;DescriptionN;NumberN
當然,N是未知的,這意味着夫婦對每條記錄的數量可從記錄變化來記錄。
在每一對中,第一個元素總是數字(,可能以0開頭,我重複),第二個元素是字符串。
字段分隔符總是分號(;)。
我想如下變換的數字:
0===> 001-23457
91399399119 ===> 913-99399119
13456 ===> 134-56
這意味着,該號碼的前三位數字後,我需要把一個破折號「 - 」
我如何能實現這使用正則表達式?
非常感謝您的合作!
完美的解決方案,它的工作原理非常棒!非常感謝!! ;-) – UltraCommit 2010-12-02 15:22:31