有限状态机解析配置文件

有限状态机是文本处理的利器,关于有限状态机的理论比较复杂,但在实际文本处理应用中,

只需要对有限状态机的模型有所了解,搞清楚状态转移关系即可快速的写出程序。

 

如对网络配置文件进行解析(与/etc/sysconfig/network-scripts/ifcfg-eth0文件类似的格式)

格式如下:(其中以#开头的行为注释行,有效的配置字符为数字,字母和点号)

 

#this is a net work config file

IPADDR = 192.168.1.71

NETMASK = 255.255.255.0

GATEWAY = 192.168.1.1

 

我们可以定义四种状态:

1.  初始状态

2.  KEY状态,读到配置键的时候进入该状态

3.  VALUE状态,读到配置值的时候进入该状态

4.  DELIM状态,即keyvalue之间的分隔符

 

状态转移关系图如下:(对于xmlini等配置文件的解析,状态转移图复杂得多)

 有限状态机解析配置文件

 

具体实现如下:(C语言)

 

有限状态机解析配置文件 parse_config.rar   

 

有限状态机解析配置文件 parse_ini.rar   (ini文件解析器)

上一篇:【转载】GIT 使用时遇到的行结束符设置问题


下一篇:Git 常见问题: unable to negotiate with *.*.*.*: no matching key exchange methodfound...