格式解析原文dregexp終於問世了

2021-05-10 16:08:17 字數 2786 閱讀 6954

dregexp終於 問世……

* 什麼是dregexp?

dregexp是乙個基於正規表示式的格式化解析和糾正原文的工具。

* 為解決什麼關鍵問題?

傳統的分析原文工具顯得不夠靈活而且**重用性較差。與傳統的格式分析(語義分析)器不同的是,它更通用,更便捷。與同類技術相比它有良好的功能擴充套件,和強力的糾正錯誤的能力。

目前dregexg正式發布1.0版本

下面將對dregexp做詳細的介紹

它具有以下幾個優點:

1. dreamregexp採用正規表示式作為格式定義,使得匹配規則更靈活,更符合正常思維。

2. dreamregexp採用配置化,使得匹配過程規則變得更加通明,簡單。

3. dreamregexp支援parser解析器,當出現一次匹配完成時,將呼叫解析器完成捕獲原文的字串的解析工作。

4. dreamregexp支援correcter糾正器,當出現不匹配時,呼叫糾正器以修改原文以達到匹配。這是其他同類技術難以實現的功能。

5. dreamregexp提出correctpoint糾正點的概念。其意義在於目的性的安裝correcter糾正器到指定的比較塊。只有已安裝糾正器的比較塊出現不匹配時才會呼叫到所安裝的糾正器

6. dreamregexp支援正規表示式的所有特殊字元,包括各種內容範圍符號與限定符,如:.?*

7. dreamregexp支援正規表示式的捕獲組。如: /1

8. dreamregexp提供了良好的解析和糾正選項。你可以隨時停止對下文的解析任務,你還可以糾正原文之後而不要求滿足當前塊的匹配。

清單dregexp-1.0-jdk1.5.jar 適用於jdk1.5

dregexp-1.0-jdk1.6.jar 適用於jdk1.6

dreamregexpdemo.zip  演示版本,內建api,dregexp-1.0-jdk1.5.jar,dregexp-1.0-jdk1.6.jar

部署步驟1. 根據需要引入jdk相應的版本的jar檔案,以dregexp-1.0-jdk1.5.jar為例。引入到自己應用專案中。

步驟2. 需要開啟dreamregexpdemo.zip中找到dreamregexp-rule.xml放到自己的應用程式的目錄中,dreamregexp-rule.xml檔案定義了匹配的規則,具體將在程式設計規範中詳細介紹。

步驟3. 建議在dreamregexpdemo.zip中找到dreamregexp-rule.xsd檔案,放在與dreamregexp-rule.xml同級的目錄下。它可以幫助你校驗匹配規則檔案的合法性。

程式設計規範

1. 匹配規則匹配檔案:dreamregexp-rule.xml

dreamregexp-rule.xml

根節點為,格式如下:

其中擁有多個糾正器

擁有多個解析器

擁有多個分析器,的type暫時只支援regexp,表示按照正規表示式規則,可以給不用給出type預設仍是regexp

擁有多個

引用乙個,其point表示安裝點。如上例中1-1表示第一組的第乙個比較塊。

將引用乙個,就是安裝解析器。其matcher引用多個表示按照correct-point的point上安裝糾正器.如上例中:引用p1的correct-point,其point表示第一組的第乙個比較塊,對應的也就是<([^//s]*)>c*的第一組的第乙個比較塊<

2. 結構規範

dreamregexp要求使用者需要寫parser和correcter的繼承類,並且dreamregexp-rule.xml中指向它們,如dreamregexpdemo中使用的是子類testparser和testcorrecter。這些子類要求實現parse()和correct()方法來完成使用者的業務功能

下面對parse()和correct()方法返回做簡單的介紹,具體參見api中的parser與correcter類(dreamregexpdemo.zip下的doc)。

parse()返回值為boolean,表示是否繼續掃瞄任務。使用者可以在某次正確匹配之後根據需要繼續或終止對下文的掃瞄任務。

correcer()返回值為boolean,表示是否需要再次去原文比較,你可以可選的糾正了原文之後而不要求其一定滿足當前的比較。

3. **規範

使用**如下:

dreamregexp dr=new dreamregexp().configure("/demo/dreamregexp-rule.xml");

dr.setarticle("ccc

");dr.docorrect();

其中configure("/demo/dreamregexp-rule.xml")為指定規則檔案,若不指定將預設為專案目錄下的dreamregexp-rule.xml檔案

dr.setarticle("ccc

");為設定正文

dr.docorrect();為開啟執行任務

TIFF World File TFW 格式解析

tiff world file tfw 格式說明摘要 tfw檔案包含相關的tiff檔案的空間引數 spatial reference 資料。本文詳細描述了tfw檔案中定義的引數。概述 兩個檔案構成tfw格式。ascii 標頭檔案 圖象檔案 圖象檔案為tiff格式 未壓縮 詳細資料 tfw檔案的名字與...

HHP格式解析

hhp格式解析 options compatibility 1.1 or later 版本 compiled file vbp htmlhelpmaker.chm 編譯後的檔名稱.路徑相對與本工程的具體路徑.contents file table of contents.hhc 內容表檔案.hhc ...

mov格式解析

peter lee 2008 06 14 一 簡介 二 原子 原子是quicktime用來構建等級資料結構的基本容器。新建立的quicktime原子就象樹的根。隨後的每個原子都包含在其中並且包含資料和其它原子。如果乙個quicktime原子包含其它原子,就被叫做父原子,包含在其中的原子就叫做葉原子。...