如何在Java中检索字符串的一部分?

5

我正在设计一个聊天小程序。在其中,用户将把他的名字附加到发送给其他用户的消息的开头。在其他用户的窗口中,我想从该字符串中检索附加的用户名。我该怎么做?用户发送的消息如下:

final_msg = user_name + ": " + user_message

因此,我想知道如何仅检索user_name字符串。 是否有一个函数可以检索到第一个“:”的子字符串? 我不想使用final_msg.split(“:”),因为user_message可能包含“:”,这将给我一个字符串数组。
2个回答

10

小贴士:

使用indexOf方法查找冒号字符(':')的第一个索引,然后调用substring函数。

String userName = final_msg.substring(0,final_msg.indexOf(':'));

编辑: 考虑将你的变量名从final_msg改为finalMsg——这只是Java风格而已。在Java常量名称中通常不使用“_”。


2
说到变量名...你把s放在那里,我想你应该是想用final_msg - Powerlord

6

你可以使用split函数并设置最大限制。例如: final_msg.split(":", 2)[0]


1
+1:这是一个非常好的建议,因为它很容易实现。 - Donal Fellows
这比另一个建议容易得多。更不用说之后阅读起来更容易了。 - Joel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接