Tag: 解析

有效地解析单个数字算术表达式

您将如何有效地(优化运行时但最小化空间)解析并评估Java中的单个数字算术表达式。 以下算术表达式都是有效的: eval(“-5”)=-5 eval(“+4”)=4 eval(“4”)=4 eval(“-7+2-3”)=-8 eval(“5+7”)=12 我的方法是迭代所有元素,使用标志跟踪当前算术运算,并逐位评估。 public int eval(String s){ int result = 0; boolean add = true; for(int i = 0; i < s.length(); i++){ char current = s.charAt(i); if(current == '+'){ add = true; } else if(current == '-'){ add = false; } else { if(add){ result += Character.getNumericValue(current); } else […]

如何从java中的字符串中删除无效的unicode字符

我正在使用CoreNLP神经网络依赖性解析器来解析一些社交媒体内容。 不幸的是,该文件包含的字符根据fileformat.info ,不是有效的unicode字符或unicode替换字符。 这些是例如U + D83D或U + FFFD 。 如果这些字符在文件中,coreNLP会回复错误消息,如下所示: Nov 15, 2015 5:15:38 PM edu.stanford.nlp.process.PTBLexer next WARNING: Untokenizable: ? (U+D83D, decimal: 55357) 基于这个答案,我尝试了document.replaceAll(“\\p{C}”, “”); 只是删除那些字符。 这里的文档只是作为字符串的文档。 但这没有帮助。 在将字符串传递给coreNLP之前,如何从字符串中删除这些字符? 更新(11月16日): 为了完整起见,我应该提一下,我只是为了通过预处理文件来避免大量的错误消息而问这个问题。 CoreNLP只是忽略它无法处理的字符,所以这不是问题。

从Java中的KML文件中提取坐标

我正在尝试用Java解析Kml文件。 因为我需要获取地标的坐标,在java中生成一个poligon并使用它。 但我的问题是,我正在使用JAK这个库来解析它,而我无法提取我想要的信息。(我在官方页面中阅读了“帮助”,但我没有找到任何帮助解决我的问题) 我正在尝试做类似的事情: final Kml kml = Kml.unmarshal(new File(“C:/Users/A556520/Documents/Proyectos/GeoFencing/res/labasa.kml”)); final Document document = (Document)kml.getFeature(); List listafeatures = document.getFeature(); 但在这一点上我不知道如何提取坐标。 我试图解析的文件就是这个: la basa

是否有Java语言的Java解析器?

我正在寻找一个允许我解析java源文件的java库,它为我提供了代码的AST表示。 实际上我只对带有注释的类和方法定义感兴趣。 我不需要方法代码的AST。 我正在使用此信息进行代码生成。 这就是我无法首先编译源文件以从结果类文件中获取信息的原因。 在生成一些额外的类之前,代码不会在没有错误的情况下编译。

用Java编写文件解析器的技巧?

编辑:我主要解析“逗号分隔值”,模糊带来了这个词我的注意。 解释CSV块是这里的主要问题。 我知道如何将文件读取为String[]和String[]一些基本function,但我不认为使用像contains()这样的方法并逐字符地分析所有内容都可行。 有什么方法可以更聪明地做到这一点? 一行示例: -barfoob: boobs, foob, “foo bar”

是否有Java库从AST生成类文件?

这个页面描述了我如何使用javac中的代码生成器来生成代码,因为我可以构建一个AST(使用我编写的单独的解析器)。 该技术涉及编辑javac的源代码以基本绕过Java解析器,以便可以将他/她自己的AST提供给代码生成器。 这可能有用,但我希望以稍微清洁的方式做到这一点。 我想在我的项目中包含生成javac的代码作为库的代码,这样我就可以用它来生成代码,而不会带来javac源代码的其余部分。 有没有办法用javac做到这一点,或者是否有更好的库? 此外,随时更改问题的标题。 我想不出更好的一个,但它有点含糊不清。 如果你建议编辑一个更好的标题,我会接受它。

当要解析的元素是json字符串的元素时,使用gson解析json的最简单方法是什么?

我正在使用gson将json解析为java bean。 对于我正在使用的API,大量的json结果将结果包含为json对象的第一个属性。 “gson方式”似乎是创建一个等效的包装器java对象,它具有一个目标输出类型的属性 – 但这会导致不必要的一次性类。 这样做有最佳实践方法吗? 例如要解析: {“profile”:{“username”:”nickstreet”,”first_name”:”Nick”,”last_name”:”Street”}} 我要做: public class ParseProfile extends TestCase { public void testParseProfile() { Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create(); String profileJson = “{\”profile\”:{\”username\”:\”nickstreet\”,\”first_name\”:\”Nick\”,\”last_name\”:\”Street\”}}”; ProfileContainer profileContainer = gson.fromJson(profileJson, ProfileContainer.class); Profile profile = profileContainer.getProfile(); assertEquals(“nickstreet”, profile.username); assertEquals(“Nick”, profile.firstName); assertEquals(“Street”, profile.lastName); } } public class ProfileContainer { protected Profile profile; public Profile […]

最优雅的是java的Numeric()解决方案

我现在正在将一小段PHP代码移植到java,我依靠函数is_numeric($x)来确定$x是否为数字。 在java中似乎没有相同的function,我对目前为止找到的解决方案不满意。 我倾向于这里找到的正则表达式解决方案: http : //rosettacode.org/wiki/Determine_if_a_string_is_numeric 我应该使用哪种方法?为什么?

如何阅读XMI?

我需要阅读序列化为XMI的UML图。 是否有任何库可以让我方便地阅读UML XMI – 方便的是我有一些方法来迭代模型中的类/包/方法/属性等。 我尝试了EMF,但是我找不到任何可以显示如何导入包含UML的XMI的教程。 我也找到了NSUML / NSMDF但是文档链接已经破了。

如何在我的java程序中集成stanford解析器软件?

我必须在java中开发一个项目,该项目使用斯坦福解析器来分隔句子,并且必须生成一个图表来显示句子中单词之间的关系。 例如:俄亥俄州位于美国。 输出: 图像显示图形。 但输出不必相同,但它必须显示图形forms的单词之间的关系。 可以使用Jgraph,Jung生成图表。 但最初我必须将解析器软件集成到我的程序中。 那么如何整合解析器?