栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在java中如何拆分一个字符串?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在java中如何拆分一个字符串?

“004-034556”为例用

String#split()
方法即可:

String string = "004-034556";String[] parts = string.split("-");String part1 = parts[0]; // 004String part2 = parts[1]; // 034556

请注意,这需要一个正则表达式,因此请记住在必要时转义特殊字符。

_ 12个具有特殊含义的字符:反斜杠

,插入符号
^
,美元符号
$
,句点或点
.
,竖线或竖线符号
|
,问号
?
,星号或星号
*
,加号
+
,左括号
(
,右括号
)
,以及方括号
[
,大括号
{
,这些特殊字符通常称为“元字符”。

所以,如果你想在如期间分

/
点.的意思是“ 任何字符在正则表达式”,请使用反斜杠逃脱个别特殊字符,像这样
split("\.")
,或使用字符类
[]
来表示文字字符
(S)
像这样
split("[.]")
,或使用
Pattern#quote()
以这样逃脱整个字符串
split(Pattern.quote("."))

String[] parts = string.split(Pattern.quote(".")); // Split on period.

要预先测试字符串是否包含某些字符,只需使用

String#contains()

if (string.contains("-")) {    // Split it.} else {    throw new IllegalArgumentException("String " + string + " does not contain -");}

注意,这不带正则表达式。为此,请

String#matches()
改用。

如果您想在结果部分中保留分割字符,请使用

正向环视
。如果您希望分割字符以左手结尾,请在模式前面加上
?<
=group 作为前缀。

String string = "004-034556";String[] parts = string.split("(?<=-)");String part1 = parts[0]; // 004-String part2 = parts[1]; // 034556

如果您希望分割字符以右侧结尾,请在

?=
图案前面加上group 作为前缀,以正向使用。

String string = "004-034556";String[] parts = string.split("(?=-)");String part1 = parts[0]; // 004String part2 = parts[1]; // -034556

如果您想限制生成零件的数量,则可以提供所需的数量作为

split()
method的第二个参数。

String string = "004-034556-42";String[] parts = string.split("-", 2);String part1 = parts[0]; // 004String part2 = parts[1]; // 034556-42


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/365386.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号