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"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 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的设计差异