我有以下问题,并希望如果我使用的是最坏的可能机制,实现什么都我试图做有人能告诉我:字符串解析mechansim获得价值
这里是我的字符串,我需要解析:
(s(j1) | f(j2) | d(f3) | t(f4) | e(f5) = 5) & v(g) = "0"
我需要能够获得J1,J2,F3,F4,F5和g,基本上什么都括号内为单独的元件
下面是我在做什么,它不是以我想要的方式工作......
String parsedString="";
String delimiter = "[()s(f(d(t(n(v(&|]+");
String[] tokens = parseString.split(delimiterString);
List<String> listOfValues = new ArrayList<String>(Arrays.asList(tokens));
for (int i=0;i<listOfValues.size();i++)
{
System.out.println("Value of "+i+"is "+listOfValues.get(i));
if(listOfValues.get(i).equals("\r") || listOfValues.get(i).equals("")|| listOfValues.get(i).equals(" "))
{
listOfValues.remove(i);
}
}
我也试图删除空格和回车,但如果有更好的方法来做到这一点(显然我的方式不工作),请让我知道。
仅供参考,这是一个非常好的网站与正则表达式http://www.regexplanet.com/advanced/java/index.html打试试'\(([^(] +?) \)'作为正则表达式和您的字符串作为输入。 – 2013-02-27 12:46:14