PL SQL中如何去掉字符串中重复的字符
CREATE OR REPLACE FUNCTION remove_rame_string(oldstr VARCHAR2,p_sign VARCHAR2) RETURN VARCHAR2 IS/**************************************************** ** Oracle去掉重复字符串 ** 函数名称:RemoveSameStr ** 参 数:【名称】 【类型 】 【说明】 ** oldStr varchar2 要处理的字符串 ** sign varchar2 字符串分隔符 ** 返 回 值:l_RESULT varchar2 不包含重复子串的记录 ****************************************************/str VARCHAR2(2000);currentindex NUMBER;startindex NUMBER;endindex NUMBER;TYPE str_type IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;arr str_type;l_result VARCHAR2(1000);
BEGIN-- 空字符串 IF oldstr IS NULL THENRETURN('');END IF;--字符串太长 IF length(oldstr) > 2000 THENRETURN(oldstr);END IF;str := oldstr;currentindex := 0;startindex := 0;LOOPcurrentindex := currentindex + 1;endindex := instr(str, p_sign, 1, currentindex);IF (endindex <= 0) THENEXIT;END IF;arr(currentindex) := TRIM(substr(str, startindex + 1, endindex - startindex - 1));startindex := endindex;END LOOP;--取最后一个字符串: arr(currentindex) := substr(str, startindex + 1, length(str));--去掉重复出现的字符串: FOR i IN 1 .. currentindex - 1 LOOPFOR j IN i + 1 .. currentindex LOOPIF arr(i) = arr(j) AND arr(i) = p_sign THENarr(j) := '';END IF;END LOOP;END LOOP;str := '';FOR i IN 1 .. currentindex LOOPIF arr(i) IS NOT NULL THENstr := str || p_sign || arr(i);--数组置空: arr(i) := '';END IF;END LOOP;--去掉前面的标识符: l_result := substr(str, 2, length(str));RETURN(l_result);
END remove_rame_string;
PL SQL中如何去掉字符串中重复的字符相关推荐
- Java中如何去掉字符串中的非法字符(预防SQL注入)
1 /** 2 * 防止SQL注入,校验字符串参数是否合法 3 * @param s 4 * @return 5 */ 6 public static boolean isValid(String s ...
- Python 技术篇-读取文件,将内容保存dict字典中。去掉字符串中的指定字符方法,dict字典的遍历
要读取的文件内容如下,txt 格式. 启用微信通知:是 启用邮件通知:是 读取的每行内容后包括换行符 "\n",用 strip() 就可以很方便去掉. d = {} # 定义一个d ...
- c语言滤去所有非数字字符,Python: 去掉字符串中的非数字(或非字母)字符
>>> crazystring = 'dade142.;!0142f[.,]ad' 只保留数字 >>> filter(str.isdigit, crazystrin ...
- C# 使用正则表达式去掉字符串中的数字
C# 使用正则表达式去掉字符串中的数字 /// <summary> /// 去掉字符串中的数字 /// </summary> /// <param name=" ...
- C# 使用正则表达式去掉字符串中的数字,或者去掉字符串中的非数字
/// 去掉字符串中的数字 public static string RemoveNumber(string key) { return Regex.R ...
- php去字符串空格,php怎么去掉字符串中空格
php去掉字符串中空格的方法:1.使用正则表达式删除字符串中间的空格及去除字符串首尾空格:2.使用str_replace和strtr函数删除字符串中间的空格:3.使用trim函数去除一个字符串两端空格 ...
- js去掉字符串中的所有空格
1.使用js去掉字符串中的所有空格 1.1.定义一个去空格函数方法 function Trim(str,is_global){var result;result = str.replace(/(^\s ...
- php取掉字符串第一位支付,php怎样去掉字符串中的第一个字符
php去掉字符串中的第一个字符的方法:可以利用substr()函数来实现.substr()函数可以返回字符串的提取部分,如果失败则返回false,或者返回一个空字符串. substr() 函数返回字符 ...
- C#如何去掉字符串中所有空格
由于空格的ASCII码值是32,因此,在去掉字符串中所有的空格时,只需循环访问字符串中的所有字符,并判断它们的ASCII码值是不是32即可.去掉字符串中所有空格的关键代码如下: testCharEnu ...
最新文章
- 线上订单号重复了?一招搞定它!
- MyBatis自动生成工具,开发编码好帮手
- 【Android 内存优化】Java 内存模型 ( Java 虚拟机内存模型 | 线程私有区 | 共享数据区 | 内存回收算法 | 引用计数 | 可达性分析 )
- Spring Boot 项目如何做性能监控?
- 单个接口添加超时时间_SpringBoot使用Guava令牌桶对接口限流
- 为什么 Python 3 把 print 改为函数?
- 调节e18-d80nk的测量距离_地坪研磨机磨盘平整度的调节方法及好处
- 单双目相机畸变校正--极线校正
- sharedpreferences使用方法_Google 推荐在 MVVM 架构中使用 Kotlin Flow
- hdu3949(线性基,求第k小的异或和
- Ubuntu18.04快捷键
- 【渝粤教育】国家开放大学2018年春季 0603-22T建筑工程管理与实务 参考试题
- php批量给文件添加头部版权,Perl 批量添加Copyright版权信息
- 简述神经元网络控制的作用和特点
- Unity资源热更-Addressables总结(一)
- linux-查看CPU温度
- mac地址修改_全球首款支持电脑名称和MAC地址修改的浏览器 VMLogin超级防关联指纹浏览器 同时支持模拟真人输入,支持自定义经纬度...
- html图片滚动首尾互联,网页中多个图片首尾相接来回滚动
- 再谈BPM(业务流程管理)为企业带来哪些提升
- Deep Anomaly Detection with Deviation Networks 论文笔记