首先,我无法使用模式和匹配因为我们使用 Java 1.5 那些类没有实现。我知道我可以通过迭代每个角色来做到这一点,但我认为这是次优的。
要提取的模式是**
,这个数字包含两个星号**
Input String = "125, 136, 1**, 154, 200, 201, 250, 2**, 304, 307"
所需的输出:
output1 (String) = "125, 136, 154, 200, 201, 250, 304, 307"
output2 (String[]) = [1**],[2**]
答案 0 :(得分:2)
一种简单的方法是使用.split()
拆分数字,然后检查strings
中的**
。
String[] s = "125, 136, 1**, 154, 200, 201, 250, 2**, 304, 307".split(", ");
ArrayList<String> withAsterik = new ArrayList();
ArrayList<String> withoutAsterik = new ArrayList();
for(String str : s)
{
if(str.contains("**")){
System.out.println(str);
withAsterik.add(str);
}
else
withoutAsterik.add(str);
}