java的split方法的转义字符

一.实例

我们都知道  String s="ad,dfjdlfs,df,s,dfl";

     执行 String re[]=s.split(",");
     则re的数组将是re[0]="ad"  re[1]="dfjdlfs" re[2]="df" re[3]="s" re[4]="dfl"
同理   String s="an|ddd|aed"
     执行  String re[]=s.split("|");
     结果中却  re[0]=""  re[1]="a"  re[2]="n" re[3]="|"  re[4]="d" ........
刚开始不知道怎么回事?

二.后来查了java的转义字符 

1.八进制转义序列:\ + 1到3位5数字;范围'\000'~'\377'      \0:空字符
2.Unicode转义字符:\u + 四个十六进制数字;0~65535       \u0000:空字符
3.特殊字符:就3个
      \":双引号
     \':单引号
     \\:反斜线
4.控制字符:5个
\r 回车 
\n 换行 
\f 走纸换页 
\t 横向跳格 
\b 退格 

5.其他转义字符
点的转义:. ==> u002E 或者
美元符号的转义:$ ==> u0024 
乘方符号的转义:^ ==> u005E 
左大括号的转义:{ ==> u007B 
左方括号的转义:[ ==> u005B 
左圆括号的转义:( ==> u0028 
竖线的转义:| ==> u007C 
右圆括号的转义:) ==> u0029 
星号的转义:* ==> u002A 
加号的转义:+ ==> u002B 
问号的转义:? ==> u003F 

反斜杠的转义: ==> u005C 

空格的转义:===>s

多个空格的转义:===>s+

解决办法:

后来改成:
  String s="an|ddd|aed"    执行  String re[]=s.split(\\u007C);   或者String re[]=s.split("\\|");
结果就是我想要的了   re[0]="an"  re[1]="ddd"  re[2]="aed"

posted @   研发之心  阅读(1570)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示