Java字符串拆分为“.”(dot)

Java字符串拆分为“.”(dot),第1张

Java字符串拆分为“.”(dot)

如果要分割成文字的点,则需要转义该点:

String extensionRemoved = filename.split("\.")[0];

否则,你将在regex上拆分.,这意味着“任何字符”。
请注意在正则表达式中创建单个反斜杠所需的双反斜杠。

ArrayIndexOutOfBoundsException
因为输入字符串只是一个点,所以得到一个,即”.”,这是一个边沿情况,当在点上分割时会产生一个空数组
split(regex)
从结果中删除所有尾随空白,但是由于在点上分割点仅留下两个空白,因此删除尾随的空白后,你将得到一个空数组。

为避免出现

ArrayIndexOutOfBoundsException
这种情况,请使用的重载版本
split(regex, limit)
,该版本的第二个参数是所得数组的大小限制。当
limit
为负数时,禁用从结果数组中删除尾随空白的行为:

".".split("\.", -1) // returns an array of two blanks, ie ["", ""]

即,当

filename
只是一个点时
"."
,调用
filename.split("\.", -1)[0]
将返回一个空白,但是调用
filename.split("\.")[0]
将引发一个
ArrayIndexOutOfBoundsException



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5004196.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存