去除字符串中多个空格,只保留一个空格
来源:互联网 发布:田士永 知乎 编辑:程序博客网 时间:2024/04/30 08:00
看到有人在问:
例如 :
ab c d e
要变成: ab c d e
有没有什么简单的方法呢.
原始帖子地址: http://www.itpub.net/thread-1054142-1-1.html
该贴中讲了在 10g 中可以使用正则表达式,
突发奇想, 想到一个方法, 可以只固定用三个 replace 实现, 当然此法存在缺陷, 只不过感觉方法有点意思, 就新开一帖了.
首先要找一个字符串中不会出现的特殊字符用来辅助我这个方法的实现, 这个字符也不一定就要是英文字符, 中文字符也行.
我假定这个不会出现在字符串中的特殊字符为 ~
那么你现在可以
select replace(replace(replace('ab c d e',' ',' ~'),'~ '),'~') from dual;
说明: 第一个replace 把 空格 转换成 空格+特殊字符 的形式,
第二个replace 把 特殊字符+空格 全部去掉
这时连续的空格已经转换成 空格+特殊字符 的形式, 只需要去掉其中的一个特殊字符即可, 这是第三个 replace 完成的.
这个方法纯属好玩, 没有高的效率, 另外原始字符串也不能过长, 否则第一步替换可能就会出问题.
刚想到一个办法, 使得第一步的 replace 后结果不会超出原始字符串长度. 变成这样:
只要在第一步中被替换的 一个空格 修改为 两个空格 即可.
这样第二步 replace 的结果中就可能剩下一个 空格+特殊字符 或者仅剩下一个 空格
如果结果中包含特殊字符, 则在第三个 replace 中去掉特殊字符.
去掉字符串中多余的空格中保留一个
http://www.itpub.net/thread-1054377-1-1.html
- 去除字符串中多个空格,只保留一个空格
- 【美团校招笔试题】去除字符串首尾空格,中间多个空格只保留一个
- 去除字符串首尾空格,中间多个空格只保留一个
- 去除多余空格 多个连续空格只保留一个
- 删除字符串里多余的空格,只保留一个空格
- 去除连续空格,并保留一个空格
- python 删除字符串中的连续空格只保留一个
- Java 去除字符串中多余的空格,只留一个
- java 去除字符串中多余的空格,只留一个
- java去除字符串中多余空格,只留一个
- 删除字符串中多余的空格(只保留一个空格)
- java----输入一个字符串,去掉字符串开头的空格和结尾的空格,若字符串中间有连续的空格,则只保留一个空格。
- 文本行中有多个空格,只保留一个
- 从一个字符串去除多余的空格
- 去除字符串两端空格
- 去除字符串两端空格
- Javascript去除字符串空格
- JS 去除字符串空格
- 导出HTML的Table到Excel中(转载)
- error C2872: ‘ofstream’ : ambiguous symbol
- Maven的发布plugin配置
- PGBouncer介绍及使用方式
- synchronize light with music
- 去除字符串中多个空格,只保留一个空格
- 测试覆盖率插件cobertura-maven-plugin
- js 校验身份证号码
- AjaxPro使用说明【转载】
- Android 针对多种屏幕进行设计 (一)支持各种屏幕尺寸
- eclipse远程调试
- ASP.NET生成压缩文件(rar打包)1【转】
- 创建IRP_MJ_WRITE IRP参数的困惑
- maven常用命令