2014-06-19 20 views
-3

如何使用指定語法解析Java中的字符串?使用指定語法解析字符串

比方說,我有這樣的EBNF語法:

object = "O:", natural_number, ":", value, ":", natural_number, ":{", { element }, "}"; 
value = '"' , character , { character } , '"'; 
element = string | boolean | array | empty_element, ";" ; 
empty_element = "N" ; 
string = "s:", natural_number, ":", value ; 
boolean = "b:". "0" | "1" ; 
array = "a:" ; 

etc. etc. won't specify it in full here 

如何讓Java的處理解析這樣的字符串成可用的樹?

+0

通過編寫一個方法,做到這一點?你有沒有嘗試過任何東西? –

+0

嗯,我可以寫一個方法來做很多子串或正則表達式,但也許有更優雅的東西。 – Davio

回答

2

使用ANTLR來解析eBNF,不要打擾自己寫它。