我正在尝试将一行文本分成多个部分.文本的每个元素都以句点分隔.我正在使用string.split("."); 将文本拆分为一个字符串数组,但没有到达任何地方.
以下是代码示例:
String fileName = "testing.one.two";
String[] fileNameSplit = fileName.split(".");
System.out.println(fileNameSplit[0]);
Run Code Online (Sandbox Code Playgroud)
有趣的是,当我尝试":"而不是"."时,它有效吗?我怎样才能让它工作一段时间?
Asa*_*aph 30
String.split()接受正则表达式(简称正则表达式),dot是正则表达式中的特殊字符.这意味着"匹配除换行符之外的所有字符".所以你必须用一个反斜杠来逃避它.但是前导反斜杠是java字符串文字中的一个特殊字符.它表示转义序列.所以它必须也被逃脱,另一个领先的反斜杠.像这样:
fileName.split("\\.");
Run Code Online (Sandbox Code Playgroud)
fileName.split(".");
Run Code Online (Sandbox Code Playgroud)
应该
fileName.split("\\.");
Run Code Online (Sandbox Code Playgroud)
。是特殊字符,split()接受正则表达式。因此,您需要转义特殊字符。
前面有反斜杠的字符
(\)是转义序列,对编译器具有特殊含义。请阅读本文档。
| 归档时间: |
|
| 查看次数: |
11902 次 |
| 最近记录: |