如何在 Java 中编写正则表达式,该表达式给定特定模式,提取其后面的值并将其存储在数组中。如果该模式后面没有值,则应在数组中添加一个空白(即“”)。
作为模式 &&
的示例,我应该得到以下输入和输出:
input=&&&&&&&&&&
o/p=["","","",""];
input=&&A&&123&&B&&985
o/p=["A",123,B,985];
input=&& && &&A&&488
o/p=["","","A","488"]
最佳答案
您可以在扫描器
上设置分隔符,然后迭代其值。
public String[] getTokens() {
LinkedList<String> list = new LinkedList<String>();
Scanner s = new Scanner(input).useDelimiter("\\&\\&");
while(s.hasNext()) {
list.add(s.next());
}
String[] a = new String[list.size()];
return list.toArray(a);
}
关于java - 用于在模式之后提取值的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29032611/