JP4347087B2 - パターンマッチング装置および方法ならびにプログラム - Google Patents
パターンマッチング装置および方法ならびにプログラム Download PDFInfo
- Publication number
- JP4347087B2 JP4347087B2 JP2004051680A JP2004051680A JP4347087B2 JP 4347087 B2 JP4347087 B2 JP 4347087B2 JP 2004051680 A JP2004051680 A JP 2004051680A JP 2004051680 A JP2004051680 A JP 2004051680A JP 4347087 B2 JP4347087 B2 JP 4347087B2
- Authority
- JP
- Japan
- Prior art keywords
- automaton
- pattern
- text
- divided
- parts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 39
- 230000006870 function Effects 0.000 claims description 19
- 230000010365 information processing Effects 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 13
- 230000001934 delay Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
1)テキストとパターンとの文字比較位置が関数的に変化する方法。
2)テキストとパターンとの文字比較位置が一定に変化する方法。
ChristianCharrs and ThierryLecroq"Handbook of Exact String Matching Algorithms"、[online]、[平成16年2月10日検索]、インターネット<URL:http://homepage.stts.edu/~aikawa/string.pdf> A.V.Aho and M.J.Corasick.Efficientstringmatching:an aid to bibliographic search.Comm.oftheACM.18(6):333-340,June 1975.
次に、これまでに入力されたテキストのサフィックスに対するパターンの最長プリフィックスを状態として持つオートマトンを分割パターンについて構成する。図1に分割パターンを用いたオートマトンによってパターンマッチングを実施するための構成を示す。オートマトンによる検索では、関数に基づいてテキストt1…tnをk個のテキスト列として振り分ける。
2 最終状態判定部
3 合成済みオートマトン部
Claims (10)
- 入力文字列であるテキストから任意文字列であるパターンを検索するパターンマッチング装置において、
前記パターンの各文字を先頭から順番にk−1(kは2以上の整数)文字置きに振り分けることによって一つのパターンをk個に分割した分割パターンについて、それぞれが互いに異なる前記分割パターンを保持し、これまでに入力されたテキストのサフィックスに対する前記保持している分割パターンの最長プリフィックスを状態として持つk個のオートマトン部を並列させて構成したオートマトン部の組をk組と、
前記テキストの各文字を先頭から順番にk−1文字置きに振り分けることによって一つのテキストをk個の分割テキストに分割し、k組の前記オートマトン部の組のそれぞれに互いに異なる前記分割テキストを入力する手段と、
k組の前記オートマトン部の組全てについて、該オートマトン部の組を構成するオートマトン部のいずれかが最終状態になり、かつ互いに異なる前記分割パターンを保持したk個のオートマトン部が該最終状態になったか否かを判定することによってパターンマッチングを行う手段と
を備えたことを特徴とするパターンマッチング装置。 - 前記オートマトン部の組をパイプライン化して実現し、このパイプライン化された前記オートマトン部の組に対し、前記分割テキストと前記分割パターンとの比較を時分割して行うパイプライン処理手段を備えた
ことを特徴とする請求項1記載のパターンマッチング装置。 - 前記オートマトン部の組のそれぞれを、互いに異なる前記分割パターンを保持したk個のオートマトン部を合成した、互いに異なる前記分割パターンにそれぞれ対応したk個の最終状態を持つ単一のオートマトン部に置き換えた
ことを特徴とする請求項1または2に記載のパターンマッチング装置。 - パターンマッチング装置が、入力文字列であるテキストから任意文字列であるパターンを検索するパターンマッチング方法において、
前記パターンの各文字を先頭から順番にk−1(kは2以上の整数)文字置きに振り分けることによって一つのパターンをk個に分割した分割パターンについて、それぞれが互いに異なる前記分割パターンを保持し、これまでに入力されたテキストのサフィックスに対する前記保持している分割パターンの最長プリフィックスを状態として持つk個のオートマトン部を並列させて構成したオートマトン部の組をk組用い、
文字列入力手段が、入力文字列の前記テキストの各文字を先頭から順番にk−1文字置きに振り分けることによって一つのテキストをk個の分割テキストに分割し、k組の前記オートマトン部の組のそれぞれに互いに異なる前記分割テキストを入力するステップと、
判定手段が、k組の前記オートマトン部の組全てについて、該オートマトン部の組を構成するオートマトン部のいずれかが最終状態になり、かつ互いに異なる前記分割パターンを保持したk個のオートマトン部が該最終状態になったか否かを判定することによってパターンマッチングを行うステップと
を実行することを特徴とするパターンマッチング方法。 - 前記オートマトン部の組をパイプライン化して実現し、このパイプライン化された前記オートマトン部の組に対し、前記分割テキストと前記分割パターンとの比較を時分割して行うパイプライン処理ステップを実行する
ことを特徴とする請求項4記載のパターンマッチング方法。 - 前記オートマトン部の組のそれぞれを、互いに異なる前記分割パターンを保持したk個のオートマトン部を合成した、互いに異なる前記分割パターンにそれぞれ対応したk個の最終状態を持つ単一のオートマトン部に置き換えた
ことを特徴とする請求項4または5記載のパターンマッチング方法。 - 情報処理装置にインストールすることにより、その情報処理装置に、
入力文字列であるテキストから任意文字列であるパターンを検索するパターンマッチング装置に相応する機能を実現させるプログラムにおいて、
前記パターンの各文字を先頭から順番にk−1(kは2以上の整数)文字置きに振り分けることによって一つのパターンをk個に分割した分割パターンについて、それぞれが互いに異なる前記分割パターンを保持し、これまでに入力されたテキストのサフィックスに対する前記保持している分割パターンの最長プリフィックスを状態として持つk個のオートマトン部を並列させて構成したオートマトン部の組k組に相応する機能と、
前記テキストの各文字を先頭から順番にk−1文字置きに振り分けることによって一つのテキストをk個の分割テキストに分割し、k組の前記オートマトン部の組のそれぞれに互いに異なる前記分割テキストを入力する機能と、
k組の前記オートマトン部の組全てについて、該オートマトン部の組を構成するオートマトン部のいずれかが最終状態になり、かつ互いに異なる前記分割パターンを保持したk個のオートマトン部が該最終状態になったか否かを判定することによってパターンマッチングを行う機能と
を実現させることを特徴とするプログラム。 - 前記オートマトン部の組をパイプライン化して実現し、このパイプライン化された前記オートマトン部の組に対し、前記分割テキストと前記分割パターンとの比較を時分割して行うパイプライン処理機能を実現させる
ことを特徴とする請求項7記載のプログラム。 - 前記オートマトン部の組のそれぞれを、互いに異なる前記分割パターンを保持したk個のオートマトン部を合成した、互いに異なる前記分割パターンにそれぞれ対応したk個の最終状態を持つ単一のオートマトン部に置き換えた
ことを特徴とする請求項7または8のいずれかに記載のプログラム。 - 請求項7ないし9のいずれかに記載のプログラムが記録されたことを特徴とする前記情報処理装置読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004051680A JP4347087B2 (ja) | 2004-02-26 | 2004-02-26 | パターンマッチング装置および方法ならびにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004051680A JP4347087B2 (ja) | 2004-02-26 | 2004-02-26 | パターンマッチング装置および方法ならびにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005242672A JP2005242672A (ja) | 2005-09-08 |
JP4347087B2 true JP4347087B2 (ja) | 2009-10-21 |
Family
ID=35024350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004051680A Expired - Lifetime JP4347087B2 (ja) | 2004-02-26 | 2004-02-26 | パターンマッチング装置および方法ならびにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4347087B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702629B2 (en) * | 2005-12-02 | 2010-04-20 | Exegy Incorporated | Method and device for high performance regular expression pattern matching |
WO2008084594A1 (ja) | 2007-01-12 | 2008-07-17 | Nec Corporation | パターンマッチング装置及び方法 |
EP2056221A1 (en) * | 2007-10-30 | 2009-05-06 | Mitsubishi Electric Corporation | Split state machines for matching |
WO2010001464A1 (ja) | 2008-07-01 | 2010-01-07 | 富士通株式会社 | 検索装置および検索方法 |
JP5224953B2 (ja) | 2008-07-17 | 2013-07-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、情報処理方法およびプログラム |
US8766666B2 (en) * | 2010-06-10 | 2014-07-01 | Micron Technology, Inc. | Programmable device, hierarchical parallel machines, and methods for providing state information |
US8593175B2 (en) * | 2011-12-15 | 2013-11-26 | Micron Technology, Inc. | Boolean logic in a state machine lattice |
JP5904045B2 (ja) * | 2012-07-24 | 2016-04-13 | 住友電気工業株式会社 | 情報処理装置および情報処理プログラム |
-
2004
- 2004-02-26 JP JP2004051680A patent/JP4347087B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2005242672A (ja) | 2005-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9647684B2 (en) | Memory-based history search | |
US20080086274A1 (en) | Method and Apparatus for Protein Sequence Alignment Using FPGA Devices | |
US20140019486A1 (en) | Logic Content Processing for Hardware Acceleration of Multi-Pattern Search | |
JP4120888B2 (ja) | データ検索装置及び方法 | |
JP2009535747A5 (ja) | ||
CN103309893B (zh) | 一种字符串的比较方法及装置 | |
CN106778079A (zh) | 一种基于MapReduce的DNA序列k‑mer频次统计方法 | |
JP4347087B2 (ja) | パターンマッチング装置および方法ならびにプログラム | |
US20050120017A1 (en) | Efficient retrieval of variable-length character string data | |
Dandass et al. | Accelerating string set matching in FPGA hardware for bioinformatics research | |
JP2010123000A (ja) | Webページグループ抽出方法及び装置及びプログラム | |
Baker et al. | Automatic synthesis of efficient intrusion detection systems on FPGAs | |
Saegusa et al. | An FPGA implementation of real-time K-means clustering for color images | |
JP2007233554A (ja) | 高速パターンマッチング装置の探索方法 | |
Bluthgen et al. | A programmable processor for approximate string matching with high throughput rate | |
JP4347086B2 (ja) | パターンマッチング装置および方法ならびにプログラム | |
CN114827030B (zh) | 一种基于折叠sram的流分类装置及表项压缩方法 | |
Lo et al. | True suffix tree approach for discovering non-trivial repeating patterns in a music object | |
JP7172687B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
WO2009147794A1 (ja) | 有限オートマトン生成システム | |
WO2018012413A1 (ja) | 類似データ検索装置、類似データ検索方法および記録媒体 | |
WO2015143708A1 (zh) | 后缀数组的构造方法及装置 | |
Bozdag et al. | Parallel short sequence mapping for high throughput genome sequencing | |
Öztekin et al. | Using FPGA-based content-addressable memory for mnemonics instruction searching in assembler design | |
Saha et al. | An approach to enhance the design of protein sequence classifier using data mining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060407 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090414 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20090605 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20090605 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090615 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090714 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090715 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4347087 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130724 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |