regexp_split_to_array,在'|'上分割 [英] regexp_split_to_array, spliiting on '|'

查看:817
本文介绍了regexp_split_to_array,在'|'上分割的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含名称/值对的字符串,
eml:='clientName | img_0196.jpg || mime ||| size | 3195562 || serverFileName | upload / 548a5b35003bf.img_0196.jpg'

I've got a string, containing name/value pairs, eml:='clientName|img_0196.jpg||mime|||size|3195562||serverFileName|upload/548a5b35003bf.img_0196.jpg',

我需要在'|'上拆分。

that I need to split on '|'.

我想获取{'clientName','img_0196.jpg','mime',,'size',...}。我的代码是:

I want to get {'clientName','img_0196.jpg',,'mime',,,'size',...}. My code is:

    RAISE NOTICE 'eml: %', eml;
    fields := regexp_split_to_array( eml, E'\|' );
    fieldsLen := array_length(fields,1);
    RAISE NOTICE 'fields, array_length(fields): %,%', fields, fieldsLen;        

我得到:

NOTICE:  eml: clientName|img_0196.jpg||mime|||size|3195562||serverFileName|upload/548a5b35003bf.img_0196.jpg
NOTICE:  fields, length(fields): {c,l,i,e,n,t,N,a,m,e,|,i,m,g,_,0,1,9,6,.,j,p,g,|,|,m,i,m,e,|,|,|,s,i,z,e,|,3,1,9,5,5,6,2,|,|,s,e,r,v,e,r,F,i,l,e,N,a,m,e,|,u,p,l,o,a,d,/,5,4,8,a,5,b,3,5,0,0,3,b,f,.,i,m,g,_,0,1,9,6,.,j,p,g},94

有人可以帮忙吗?谢谢。

Can someone help? Thanks.

推荐答案

您缺少反斜杠: E'\ |'应为 E'\\ |'

这篇关于regexp_split_to_array,在'|'上分割的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆