利用Perl解析文件用法指导

开发 架构
利用Perl解析XML文件的方法你是否了解,这里向大家简单介绍一下,当在Perl中使用XML时,你会有将近五百个CPAN模块可以选择,每一个都支持整合Web服务的不同方面。

本文和大家重点讨论一下利用Perl解析XML文件, 当在Perl中使用XML时,你会有将近五百个CPAN模块可以选择,每一个都支持整合Web服务的不同方面。此外,Perl的核心库包括多个支持XML的模块。

利用Perl解析XML文件

 当在Perl中使用XML时,你会有将近五百个CPAN模块可以选择,每一个都支持整合Web服务的不同方面。此外,Perl的核心库包括多个支持XML的模块。这篇文章就关注于一个最早期且涉及最频繁的核心模块:XML::Parser.

XML::解析器系列

最初的Perl解析器XML::Parser::Expat由LarryWall在几年前编写并由ClarkCooper保持延续。模块作为ExpatXMLparser的界面由JamesClark用C语言编写且已经被一些脚本语言所采用。

Perl解析XML文件中Expat是一个以事件为基础的解析器,意味着特定条件触发处理功能。例如,一个开始或结尾标记将触发适当的用户定义子程序。XML::Parser模块在Expat功能的基础上为普通应用所建构。
注意Expat在解析之前不会使XML生效且在遇到错误出现时会失效。这些限制会使XML::Parser模块速度非常之快。

XML::Parser简介

任何人都可以在Perl中编写一个XML解析器。毕竟你只是处理具有已知格式的文本。但由于XML::Parser模块是用C编写的,他比任何你可以实现的纯Perl应用要更有效的多。而且既然他已经被编写出来,你就可以把时间花在其他更有用的事情上。

XML::Parser的Expat的功能允许你定义所使用的解析器的样式。最普遍使用的样式是Tree和Stream,Tree处理XML的输入,创建含有文件中的元素和数据的成套数组,这样你就可以按照你的意愿控制这个结构。Stream将分析行为划分层级,在一个事件的开始做处理,要使用Stream,你必须在你对模块做例示并将其与描述事件出现时如何处理的子程序相关联时定义处理器。

其它样式还包括:Sub,允许你特定地对一种XML标记定义其功能。Debug,将文件显示未标准输出。Object,与Tree相似但是返回对象。你也可以通过在XML::Parser类中定义一个子类来设定一个客制样式。

小结

你对XML::Parser的Expat功能熟悉之后,你可以将其作为接触几百个可用的CPANXML模块的跳板。Perl解析XML文件时我们这里的Stream样式是***一个可用的XML::Parser模块中的解析类型。你可能会发现其他的会更适合你的工作任务。Perl几乎从***个工程方案推出时就具有XML功能,不论你的需要如何,他都是一个很好的选择。

【编辑推荐】

  1. Perl解析XML文件方法指导
  2. Perl模式匹配参数使用详解
  3. 实例解析Perl多进程技术的应用
  4. 学习笔记 Perl split函数用法指导
  5. Perl多进程及其和多线程的关系解析
责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-26 15:06:29

Perl解析XML文件

2010-07-26 14:45:17

Perl Hash

2010-07-23 14:12:14

Perl Hash

2010-07-20 13:02:08

Perl数组

2010-07-26 16:23:23

Perl语言

2010-07-21 10:32:05

Perl函数返回值

2010-07-26 10:09:01

Perl split函

2010-07-13 13:49:43

Perl foreac

2010-07-23 13:23:10

Perl语言

2010-07-21 10:05:13

Perl文本处理模块

2010-07-20 09:45:04

Perl继承

2010-07-15 10:22:23

Perl控制结构

2010-07-16 16:56:01

Perl构造函数

2010-07-16 08:47:53

Perl if语句

2010-07-19 14:13:41

Perl函数

2010-07-16 13:10:36

Perl哈希表

2010-07-14 15:32:21

Perl转义字符

2010-07-20 15:02:20

Perl数组

2010-07-21 13:59:59

Perl引用

2010-07-21 13:53:07

Perl引用
点赞
收藏

51CTO技术栈公众号