2014-02-24 53 views
1

我想從下面的消息中提取一個特定的字符串。 我有一個消息,有些看起來像這樣我想從下面的消息中提取一個特定的字符串(oracle)

"{1:kkkkkkkkkkkkkkkkkkkkkk}{2:kkkkkkkkkkkkkkkkkkkkkk}{4: 
:20:M000000043319452 
:25:kkkkkkkkkkkkkkkkkkkkkkUR 
:28C:00037/00012 
:60M:FGHYYGGGG,52 
:61:1402210221CR180,ABCDEFGHIJK//25-15974720-2 
BE762/051/DFRR. DFGHYUJI 
:86:ADDFCVBG Paid In/AVCDFGHUJKI 
kkkkkkkkkk:kkkkkkk GMBH BNK:kkkkkkkkkkkkkkk ACT:ABCDEFGHIJK 
INFO:ABCDEFGHIJK CUST111006 
:61:1402210221CR588,ABCDEFGHIJK//25-15974757-2 
BE762/051/UEB. kkkkkkkkkkkkkk 
:86:ADDFCVBG Paid In/XW3000-CT2014-02-21-12.15.45.171881 
kkkkkkkkkkk:Mayer ABCDEFGHIJK BNK:RVSADEMX ACT:ABCDEFGHIJK 
INFO:GGHJUGG ADDEW 95268AAAAADDDD9646 SSSSS 
:61:1402210221DR585854,23NTRFNONREF//25-1SSSSSS768-1 
M051/206/FVGBHHHHH. 
:86:ADDFCVBG Paid Out Manual 
BEN:DD DD DD DD DD 
INFO:kkkkkkkkkkkk kkkkkkkkkkkkkkk 
:61:1402210221CR285,14NTRFCreditor Payment//25-15975438-2 
BE762/051/UEB. BBBBB 
:86:BBBBB Paid In/ABCDEFGHIJUKL 
kkkkkkkkkkk:Hella KGaA Hueck BNK:kkkkkkkkkkkkkk ACT:ABCDEFGHIJK 
INFO:INV 952687857 05.02.2014 
:62F:ABCDEFGHIJK,1 
:64:ABCDEFGHIJK,05 
:65:ABCDEFGHIJK,1 
-}{5:{CHK:kkkkkkkkkkkkkkkk}}" 

我想從28C標記拿出00012。我想提取28c標籤之後/ 60M標籤之前的所有內容:60M: 請向我提供任何關於oracle完全新的建議。

回答

2
regexp_substr(swift_message, ':28C:.*?/(\S*)', 1, 1, '', 1) 

fiddle

+0

嘿謝謝了很多小提琴。在你給我解釋一下你到底在幹什麼。? – user2647888

+0

抱歉@Egor誤讀您的名字 – user2647888

0

,如果你有一個表中的列這個按摩的內容然後ü可以做到這一點作爲

SELECT SUBSTR(SUBSTR(message, INSTR(message,'28C'), INSTR(message,':60M')-INSTR(message,'28C')),INSTR(SUBSTR(message, INSTR(message,'28C'), INSTR(message,':60M')-INSTR(message,'28C')),'/')+1) AS Output_String 
FROM table_name 

fiddle 其中,消息是collumn名我選和table_name是名的表格

+0

非常感謝Vikas的回答。正如你所說的,消息在表 – user2647888

+0

這是否適合你? –

相關問題