用于检查语法格式的software \ tool

时间:2014-02-27 19:00:30

标签: formatting string-formatting

我正在寻找一种工具,可以验证给定的文本\段落是否符合特定格式 例如:
我可以检查文本是否如下:

xxx{ 
    sss:aaa;
}
yyy();  

最好是开源工具,有简单的规则集,如xml或其他东西 通过文本我的意思是我从fgets()获得的字符串,或从文件中读取的任何函数。

1 个答案:

答案 0 :(得分:0)

对于这样的事情,我建议使用解析器(例如,参见What is Parse/parsing?)。您可以使用像Yacc或其免费GNU等效Bison之类的解析器生成器或任意数量的other parser generators来解析您要解析的语言的定义,其中许多也是免费提供的。

大多数解析器用于将符合语法的文本转换为其他形式(例如中间语言或机器代码),但这不是必需的 - 在您的情况下,解析器可以简单地说(至少)如果文本符合给定的语法,则为“是”。

简单语法的解析器可以手工构建,但是,如果你有可用的工具,使用解析器生成器在我的经验中更容易和更健壮。

此外,您显示的文本类似于用C语言编写的代码部分(接近结构声明后跟函数调用),因此您可以重用部分代码您需要从现有的Yacc语法中获取C语法this one