昨天,遇到了一个技术问题。本来我在程序中用的trim()方法来处理从JSP页面传来的值,后来在测试时,发现当我输入的是全角空格时,trim()方法失效。

需求是这样的,只是去掉字符串两端的空格(不论是全角空格还是半角空格),字符串中间的空格不变。后来经过查资料和研究,总结出了以下两种写法:

一、字符串的字符替换法:

思路:(1)将字符串中所以有的全角空格转换成两个半角空格

(2)用trim()方法去掉字符串两端的空格(此时全是半角空格)

(3)将两个相邻的半角合成一个全角

评价:这方法遇到字符串中间是半角+全角的时间,(3)步中有可能合并后,与原来

不一样。

原代码:

public String  trim(String Str){

String newstr = Str.replaceAll(" ","  ");

newstr = newstr.trim();

newstr = newstr.replaceAll("  "," ");

return newstr;

}

二、正则表达式转换法:

思路:利用正则表达式进行匹配替换。

评价:这应该是正统的解决之道

原代码:

例1:

public static String  trims(String Str,String Flag) {

if (Str == null || Str.equal

java 正则表达式替换多个全角空格为一个半角空格_去掉字符串两端的全角空格和半角空格(含源代码)...相关推荐

  1. 去掉字符串两端的全角空格和半角空格(含源代码)

    昨天,遇到了一个技术问题.本来我在程序中用的trim()方法来处理从JSP页面传来的值,后来在测试时,发现当我输入的是全角空格时,trim()方法失效. 需求是这样的,只是去掉字符串两端的空格(不论是 ...

  2. java正则表达式替换特殊字符_使用正则表达式替换报表名称中的特殊字符(推荐)...

    正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表通常被用来检索.替换那些符合某个模式(规则)的文 ...

  3. java正则表达式 替换空格_Java正则表达式替换移除空行和多余的空格

    这几天重拾Java写代码,须要操做文本文件中的内容.正则表达式 最终,要把内容里的空行和多余的连续空格移除,使用String里的replace或者replaceAll,试了不少次都没有成功.spa 最 ...

  4. 剔除半角字符和空格 java_去掉字符串中的全角,半角空格,回车,制表符

    package com.studyJava.stringStudy; import java.util.regex.Matcher; import java.util.regex.Pattern; p ...

  5. java正则表达式去除空格_去掉字符串前后所有空格的正则表达式

    正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符 ...

  6. Java正则表达式替换域名

    正则表达式替换域名 今天快下班的时候,有一个替换域名的需求,先附上代码 /*** 外部渠道替换图片域名*/public static String replaceDomainName(String t ...

  7. 圆角半角数据库_数据库使用技巧——SQL 全角与半角切换

    select cast('111' as int) as num1 select cast('111' as int) as num2 运行结果: 第一个正确显示: 111 第二个则报错: 在将 va ...

  8. java去掉首尾字符_去掉字符串首尾指定的字符或空格

    [对用到的方法进行了解] var str = 'hdsjfi2423'; alert(str.indexOf('d'));//1 alert(str.indexOf('2'));//6 alert(s ...

  9. 【字符串】去掉字符串两端的空格trimSpace

    有一个字符串开头或结尾含有n个空格("   abcdefgdddd    "),欲去掉前后空格,返回一个新字符串. int trimSpace(char *bufscr,char ...

最新文章

  1. 这样出ORACLE的面试题
  2. 2021年春节联欢晚会第三次联排亮点多
  3. react 逆地理 高德地图_高德地图又出逆天黑科技!全国各大城市模型直接获取...
  4. 时空大数据 AI 研究院在京成立,助推时空产业高质量发展
  5. 你一直憋着的那个屁,放出来时真的有人知道吗?我先告诉你憋着不放的屁会到哪去……...
  6. idea中使用osgi_OSGi环境中的Servlet基本身份验证
  7. svn 版本升级的问题
  8. postman跨域测试_安装使用Hoppscotch构建API请求访问与测试
  9. Linux工作笔记038---CentOS8.2安装Nginx_测试通过
  10. 真机linux系统封装rhel7.6虚拟机
  11. 【TBSchedule】TBSchedule应用实战手册
  12. 确定性的丧失——20世纪新启蒙运动的来龙去脉
  13. 强烈推荐这款能探测别人工资的黑科技!秀的我头皮发麻
  14. 毕业季--写给未来的自己
  15. Axure RP 基于母版实现页面框架/页眉/页脚/导航栏
  16. 信号电缆与计算机电缆区别,控制电缆与计算机电缆有什么区别
  17. 你明白什么是会签?工作流+会签应用
  18. 在Excel中使用VBA来筛选数据
  19. CTF中的Crypto
  20. liunx配置主机名

热门文章

  1. python边玩边学_边学边学
  2. [shell]两种方法写出99乘法表
  3. 产品图批量翻译,支持全球小语种翻译 - 产品图批量抠图白底 - 产品图尺寸批量自动无损缩放跨境电商业内常用图片处理一键批量完成
  4. 操作系统原理:覆盖技术、交换技术、虚拟内存概要
  5. 《线性代数》期末复习笔记3——习题讲解及方法总结
  6. 在 UltraEdit 和 UEStudio 中开始使用 Perl 正则表达式
  7. 获取手机的IMEI,MSISDN,ICCID,IMSI
  8. iOS 【如何去除 UILabel 边缘异常黑线/阴影】
  9. 干了一年半, 我还是离开了区块链, 这5点是我学到的
  10. Word2003表格内容无法居中的几种解决方案