如何进行这些类型的字符串模式匹配

所以如果我得到一个像这样的字符串:

  s1|s2|s3|s4:t1|t2|t3

首先我想分离所有 's' 字符串,然后分离所有 't' 字符串。

我如何摆脱像“|”这样的分隔符 和 ':',

我知道我可以做基本的 charAt 和 subString 但这看起来工作量太大了。

就像我知道的模式一样:每个字符串都由 | 分隔 有没有办法使用模式提取字符串?

你们能给我看一些代码吗,或者一些关于我应该学习的主题的提示。

我这样做的方式是使用多个数组列表来保存分隔符的索引,然后使用数组列表来存储所有字符串,如果我想执行操作,那就更难了。


慕桂英546537
浏览 55回答 2
2回答

海绵宝宝撒

您可以使用 String.split 函数:String[] parts = "s1|s2|s3|s4:t1|t2|t3".split("[:|]"); // parts = { s1, s2, s3, s4, t1, t2, t3 }请注意,parts根据输入,数组的大小可能不同(例如,s1|s2将给出{s1, s2}.

PIPIONE

要提取紧随其后的任何字母和任何数字的任何部分,您可以使用模式[a-z]\d+
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java