gpt4 book ai didi

java - 拆分问题(字符串正则表达式)

转载 作者:行者123 更新时间:2023-11-29 06:40:40 25 4
gpt4 key购买 nike

您好,我遇到以下代码问题(文件属于 File 类):

String[] fileNameSplit = file.getName().split(".");
String fileType = fileNameSplit[(fileNameSplit.length - 1)];

它总是在 -1 处抛出 ArrayOutOfBoundsExecption,表明 fileNameSplit 为 0。当我取出 -1 时,它仍然显示 ArrayOutOfBoundsException 但现在为 0,这意味着它是空的。

我做错了什么?

最佳答案

这是因为 . 是一个 meta-character接受“任何字符”。它将字符串中的每个字符都视为分隔符,“吃掉”其全部内容。

像这样转义点:

String[] fileNameSplit = file.getName().split("\\.");

或者使用一个字符类,像这样:

String[] fileNameSplit = file.getName().split("[.]");

关于java - 拆分问题(字符串正则表达式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12677262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com