仅在第一个实例上拆分字符串 \- java

新手上路,请多包涵

我想用’=‘字符分割一个字符串。但我希望它只在第一个实例上拆分。我怎样才能做到这一点 ?这是 ‘_’ char 的 JavaScript 示例,但它不适用于我 仅在指定字符的第一个实例上拆分字符串

例子 :

 apple=fruit table price=5

当我尝试 String.split(‘=’);它给

[apple],[fruit table price],[5]

但是我需要

[apple],[fruit table price=5]

谢谢

原文由 dracula 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 477
2 个回答
string.split("=", limit=2);

正如 String.split(java.lang.String regex, int limit) 解释:

此方法返回的数组包含此字符串的每个子字符串,这些子字符串由与给定表达式匹配的另一个子字符串终止或以字符串结尾终止。数组中的子字符串按照它们在此字符串中出现的顺序排列。如果表达式与输入的任何部分都不匹配,则结果数组只有一个元素,即这个字符串。

limit 参数控制应用模式的次数,因此会影响结果数组的长度。如果限制 n 大于零,则模式将最多应用 n - 1 次,数组的长度将不大于 n ,并且数组的最后一个条目将包含最后一个匹配分隔符之外的所有输入。

例如,字符串 boo:and:foo 使用这些参数产生以下结果:

>  Regex Limit    Result
>
> ```

: 2 { “boo”, “and:foo” }
5 { “boo”, “and”, “foo” }
-2 { “boo”, “and”, “foo” } o 5 { “b”, “”, “:and:f”, “”, “” } o -2 { “b”, “”, “:and:f”, “”, “” } o 0 { “b”, “”, “:and:f” }

”`

原文由 Zaheer Ahmed 发布,翻译遵循 CC BY-SA 4.0 许可协议

是的,你可以,只需将整数参数传递给 split 方法

String stSplit = "apple=fruit table price=5"

stSplit.split("=", 2);

这是一个 java 文档参考: String#split(java.lang.String, int)

原文由 codeMan 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题