JP6300512B2 - 判定装置、判定方法、及び、プログラム - Google Patents

判定装置、判定方法、及び、プログラム Download PDF

Info

Publication number
JP6300512B2
JP6300512B2 JP2013262880A JP2013262880A JP6300512B2 JP 6300512 B2 JP6300512 B2 JP 6300512B2 JP 2013262880 A JP2013262880 A JP 2013262880A JP 2013262880 A JP2013262880 A JP 2013262880A JP 6300512 B2 JP6300512 B2 JP 6300512B2
Authority
JP
Japan
Prior art keywords
character string
conversion
text
type
character
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.)
Active
Application number
JP2013262880A
Other languages
English (en)
Other versions
JP2015118625A (ja
Inventor
渕 武志
武志 渕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Soliton Systems KK
Original Assignee
Soliton Systems KK
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Soliton Systems KK filed Critical Soliton Systems KK
Priority to JP2013262880A priority Critical patent/JP6300512B2/ja
Publication of JP2015118625A publication Critical patent/JP2015118625A/ja
Application granted granted Critical
Publication of JP6300512B2 publication Critical patent/JP6300512B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)

Description

本発明は、判定装置、判定方法、及び、プログラムに関する。
テキストの文字コード種類等を判定する装置が知られている。例えば、複数の文字コード種別によって変換した文字列を統計的に解析して、文字コード種別を判別する装置が知られている(例えば、特許文献1参照)。
特許文献1 特開2010−176237号公報
しかしながら、上述の装置では、統計的に文字コード種別を判別しているので、判定の精度が十分ではないといった課題がある。
本発明の態様においては、入力されたテキストの種類を判定する判定装置であって、予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得部と、入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定部と、を備える判定装置、判定方法、及び、プログラムを提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
判定装置10の全体構成図である。 文字列生成部20による誤変換文字列リスト32の生成処理を説明するフローチャートである。 文字列生成部20によって生成される誤変換文字列リスト32の一例を示す。 取得部22、判定部24及び修正部26による誤変換の判定処理を説明するフローチャートである。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 検出量の算出を説明する図である。 判定装置110の全体構成図である。 判定装置110の文字列生成部20による正常変換文字列リスト34の生成処理を説明するフローチャートである。 文字列生成部20によって生成される正常変換文字列リスト34の一例を示す。 取得部22、判定部24及び修正部26による誤変換の判定処理を説明するフローチャートである。 本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、判定装置10の全体構成図である。判定装置10は、入力されたテキストの種類を判定する。テキストの種類の判定とは、テキストを変換した文字コード種別の判定、変換に用いられた文字コード種別の正誤の判定、及び、テキストの言語の種類の判定を含む。例えば、判定装置10は、予め記憶部14に記憶された誤変換された文字列が、入力されたテキストに含まれているか否かによって、当該テキストが誤変換されたか否かを判定する。尚、当該誤変換された文字列とは、表示装置等に表示した場合、文字化けして意味をなさないように表示される文字列のことである。
図1に示すように、判定装置10は、制御部12と、記憶部14とを備える。判定装置10の一例は、コンピュータである。
制御部12は、一例として、CPU(Central Processing Unit)等の演算処理装置である。制御部12は、文字列生成部20と、取得部22と、判定部24と、修正部26とを有する。例えば、制御部12は、記憶部14に記憶されたプログラムを読み込むことによって、文字列生成部20、取得部22、判定部24、及び、修正部26として機能する。尚、文字列生成部20、取得部22、判定部24、及び、修正部26の一部または全部を回路等のハードウェアによって構成してもよい。
文字列生成部20は、記憶部14に記憶された文字列リスト30に含まれる文字列を取得する。文字列生成部20は、変換前の文字列の文字コード種別を誤って認識して1以上の他の文字コード種別の文字列に誤変換した誤変換文字列を含む誤変換文字列リスト32を記憶部14に記憶させる。文字列生成部20は、誤変換の種類と対応付けられた誤変換文字列を含む誤変換文字列リスト32を記憶部14に記憶させる。誤変換の種類とは、例えば、変換前後の文字コード種別、及び、誤認識した文字コード種別の組み合わせのことである。尚、記憶部14が、予め誤変換文字列リスト32を記憶する場合、文字列生成部20は省略してもよい。また、記憶部14が、予め誤変換文字列リスト32を記憶する場合であっても、新たに取得したテキストに含まれる文字列に基づいて、誤変換文字列リスト32を更新するために文字列生成部20を設けてもよい。
取得部22は、記憶部14及び判定部24と情報を入出力可能に接続されている。取得部22は、予め定められた種類のテキストに用いられうる文字列を記憶する記憶部14から文字列を取得する。例えば、取得部22は、文字列として誤変換の種類と対応付けられた誤変換文字列を記憶部14から取得する。取得部22は、取得した誤変換文字列を誤変換の種類とともに判定部24へと出力する。
判定部24は、取得部22から誤変換文字列を取得する。判定部24は、入力されたテキスト中に誤変換文字列が含まれているか否かに基づいて、テキストの種類を判定する。例えば、判定部24は、入力されたテキスト中に誤変換文字列が含まれていることを条件として文字コード種別の誤変換を検出する。具体的には、判定部24は、閾値Th以上の長さまたは数の誤変換文字列が入力されたテキスト中に含まれることを条件として文字コード種別の誤変換を検出する。誤変換文字列の長さまたは数の一例は、誤変換文字列のバイト長またはバイト数である。また、判定部24は、入力されたテキスト中に含まれる誤変換文字列がいずれの種類の誤変換に対応するものであるかに基づいて、誤変換の種類を判定する。例えば、判定部24は、取得部22から取得した誤変換文字列に対応づけられた誤変換の種類に基づいて、変換前後の文字コード種別、及び、誤認識した文字コード種別を判定する。判定部24は、修正部26と接続されている。判定部24は、検出した誤変換、及び、誤変換の種類を修正部26に出力する。
修正部26は、判定部24が判定した誤変換の種類に基づいて、入力されたテキストを変換前の文字コード種別のテキストに戻す。修正部26は、判定部24が判定した誤変換の種類に基づいて、変換前の文字コード種別に戻したテキストを変換後の文字コード種別の文字列に再変換する。
記憶部14は、テキストの種類を判定するために必要なプログラム及び情報を記憶する。例えば、記憶部14は、テキストの種類を判定する時に使用される誤変換文字列リスト32を生成する生成プログラムを記憶する。記憶部14は、生成された誤変換文字列リスト32に基づいて、テキストの種類を判定する判定プログラムを記憶する。記憶部14は、文字列リスト30を記憶する。文字列リスト30は、いずれかの文字コード種別による複数の文字列を含む。文字列は、例えば、日本語の場合、1以上の漢字を含む意味のある単語、及び、1以上のひらがなを含む意味のある単語である。意味のある単語とは、通常の辞書等に記載されている単語のことである。記憶部14は、文字列リスト30の各文字列を誤変換した複数の誤変換文字列を含む誤変換文字列リスト32を記憶する。尚、記憶部14は、外部のサーバ等に設けてもよい。
図2は、文字列生成部20による誤変換文字列リスト32の生成処理を説明するフローチャートである。誤変換文字列リストの生成処理は、制御部12が生成プログラムを読み込むことによって実行される。図3は、文字列生成部20によって生成される誤変換文字列リスト32の一例を示す。
図2に示すように、文字列生成部20は、記憶部14に記憶された文字列リスト30から、当該文字列リスト30の文字コード種別及び文字列を取得する(S10)。
文字列生成部20は、取得した文字列を複数の文字コード種別へと正常に変換して、変換前の文字列を生成する(S12)。例えば、文字列生成部20は、取得した文字列の文字コード種別がUTF8である場合、文字コード種別をUTF−8と正しく認識して、当該文字列をShift−JIS、及び、EUC−JP等の異なる文字コード種別へと正常に変換した文字列を生成する。ここで生成された文字列を変換前の文字列とする。正常に変換された文字列とは、表示装置等に表示した場合、文字化けせずに意味のある文字として表示される文字列のことである。
文字列生成部20は、生成した変換前の文字列を、更に、生成したときの正しい文字コード種別とは別の文字コード種別と誤認識して、異なる文字コード種別へと変換して、変換後の文字列を誤変換文字列として生成する(S14)。誤変換文字列を生成するときに用いた文字コード種別を変換後の文字コード種別とする。例えば、文字列生成部20は、文字コード種別Shift−JISへと正常に変換した変換前の文字列のそれぞれを、文字コード種別Latin−1と誤認識して、変換後の文字コード種別UTF−8へと変換して誤変換文字列を生成する。ここで、文字コード種別Shift−JISの文字列を、文字コード種別Latin−1と誤認識して、文字コード種別UTF−8に変換しているので、当該変換は誤変換である。同様に、文字列生成部20は、他の文字コード種別EUC−JP等によって正常に変換した変換前の文字列のそれぞれを、異なる文字コード種別Latin−1と誤認識して、文字コード種別UTF−8等へ誤変換することにより誤変換文字列を生成する。尚、文字列生成部20は、元の文字コード種別UTF−8、即ち、文字列リスト30の文字コード種別の文字列についても他の文字コード種別と誤認識して、誤変換した誤変換文字列を生成する。
文字列生成部20は、複数の誤変換文字列を、記憶部14に記憶された誤変換文字列リスト32に登録する(S16)。例えば、文字列生成部20は、変換前の文字列、変換前の文字コード種別、誤認識した文字コード種別、変換後の文字コード種別、及び、誤変換文字列を関連付けた誤変換文字列リスト32を生成して、記憶部14に記憶させる。従って、文字列生成部20は、変換前後の文字コード種別、及び、誤認識した文字コード種別のそれぞれの組み合わせに対して誤変換文字列を生成する。
この後、文字列生成部20は、文字列リスト30に含まれる全ての文字列に対して、上述のステップS10からS16を繰り返す(S18:No)。
文字列生成部20は、文字列リスト30に含まれる全ての文字列に対して、上述のステップS10からS16を実行したと判定すると(S18:Yes)、生成処理を終了する。
これにより、文字列生成部20は、図3に示すように、ステップS12で生成した各種の文字コード種別の変換前の文字列、変換前後の文字コード種別、及び、誤認識した文字コード種別を、ステップS14で生成した誤変換文字列に関連付けた誤変換文字列リスト32を記憶部14に記憶させる。換言すれば、文字列生成部20は、文字コード種別の数の略3乗に文字列の数をかけた個数の誤変換文字列を含む誤変換文字列リスト32を生成する。
次に、誤変換文字列リスト32について説明する。図3に示す誤変換文字列リスト32の最上段では、記憶部14に記憶された文字コード種別UTF−8の文字列を文字コード種別Shift−JISへと正常に変換した文字列を変換前の文字列WR101としている。更に、誤変換文字列リスト32の最上段では、変換前の文字列WR101の文字コード種別Shift−JISを、文字コード種別Latin−1と誤認識して、文字コード種別UTF−8へと誤変換して変換後の文字列WR201を生成している。文字列WR101の一例は「特許文献」であって、文字列WR201の一例は「□□□□」である。また、誤変換文字列リスト32の中段では、変換前の文字列WR301の文字コード種別EUC−JPを、文字コード種別Shift−JISと誤認識して、文字コード種別UTF−8へと誤変換して変換後の文字列WR401を生成している。
図4は、取得部22、判定部24及び修正部26による誤変換の判定処理を説明するフローチャートである。図5、図6、図7、図8、図9、図10、及び、図11は、検出量の算出を説明する図である。誤変換の判定処理は、制御部12が判定プログラムを読み込むことによって実行される。
図4に示すように、取得部22が入力されたテキストを取得する(S20)。例えば、取得部22は、ネットワークを介して外部から入力されたテキストを取得してもよく、内部の記憶部14から入力されたテキストを取得してもよい。取得部22は、取得したテキストを判定部24へ出力する。
取得部22は、記憶部14から全ての誤変換文字列を含む誤変換文字列リスト32を取得する(S22)。取得部22は、取得した誤変換文字列リスト32を判定部24へと出力する。
判定部24は、テキストに含まれる文字列から、取得部22から取得した誤変換文字列リスト32に含まれる誤変換文字列を検出する。判定部24は、検出した誤変換文字列に基づいて、誤変換の種類毎に検出量を算出する(S24)。検出量は、検出された連続する誤変換文字列のバイト数またはバイト長の合計である。
例えば、図5に示すように、判定部24は、テキスト内の検索対象の最初の1バイト目のデータと同じ1バイト目のデータを有する誤変換文字列を誤変換文字列リスト32から抽出する。判定部24は、テキストの当該1バイト目のデータが誤変換文字列リスト32のいずれかの誤変換文字列の1バイト目のデータにも一致しない場合、テキストの次の2バイト目のデータが、1バイト目のデータと一致する誤変換文字列を誤変換文字列リスト32から抽出する。このようにして、判定部24は、テキストのいずれかのデータが誤変換文字列リスト32のいずれかの誤変換文字列の1バイト目に一致するまで続ける。判定部24は、テキストのいずれのデータも誤変換文字列リスト32の誤変換文字列の1バイト目に一致しない場合、検出量を0とする。
一方、図6に示すように、判定部24は、テキストのいずれかのデータ、例えば、テキストの最初の1バイト目のデータがいずれかの誤変換文字列の1バイト目と一致すると、当該一致する全ての誤変換文字列を誤変換文字列リスト32から抽出する。次に、判定部24は、テキストの2バイト目のデータと同じ2バイト目のデータを有する誤変換文字列を、既に抽出済みの誤変換文字列から絞り込む。判定部24は、テキストのデータと同じ並びのデータを有する誤変換文字列が抽出される限り、同じ処理をテキストの3バイト目以降にも実行する。判定部24は、テキストのデータと同じ並びのデータの誤変換文字列が検出されなかった場合、検出された誤変換文字列のうち、最長の誤変換文字列のバイト数を検出量とする。例えば、図7に示す例では、判定部24は、6バイト長の誤変換文字列を最長の誤変換文字列として誤変換文字列リスト32から検出している。
同様に、図8に示すように、判定部24は、テキストの検索対象の2バイト目のデータと同じ1バイト目のデータを有する誤変換文字列を誤変換文字列リスト32から抽出する。判定部24は、テキストの2バイト目のデータを1バイト目のデータとする誤変換文字列であって、テキストの2バイト目以降も並びが一致する誤変換文字列のうち、最もバイト長が長い誤変換文字列を誤変換文字列リスト32から検出する。
ここで、判定部24は、テキストの2バイト目のデータと同じ1バイト目のデータを有する誤変換文字列を誤変換文字列リスト32から検出しても、テキスト内で誤変換文字列が全て重複している場合、当該誤変換文字列のバイト長を検出量としてカウントしない。例えば、図9の下に示すように、判定部24は、テキストの2バイト目のデータと同じ1バイト目のデータを有する誤変換文字列として、4バイト長の誤変換文字列を検出した場合、テキスト内で誤変換文字列が全て重複しているので、4バイト長を検出量としてカウントしない。
一方、判定部24は、テキストの2バイト目のデータと同じ1バイト目のデータを有する誤変換文字列を誤変換文字列リスト32から検出した場合、先に検出した誤変換文字列よりもバイト長が長く、且つ、テキスト内で誤変換文字列が重複している場合、1バイト目のバイト長をキャンセルして、当該誤変換文字列のバイト長を検出量としてカウントする。
更に、判定部24は、テキストの検索対象の3バイト目のデータ、4バイト目のデータに関して同様の処理を実行する。
ここで、判定部24は、先に検出した誤変換文字列の一部と、後に検出した誤変換文字列の一部とが重複する場合、後に検出された誤変換文字列のバイト長から重複しているバイト長を引いた値を、先に検出された誤変換文字列のバイト長に足した値を検出量とする。
例えば、判定部24が、図7に示す6バイト長の誤変換文字列を検出した後、図10の下に示す6バイト目から始まる3バイト長の誤変換文字列を検出したとする。この場合、図7の誤変換文字列の6バイト目と、図10に示す誤変換文字列の1バイト目とが重複しているので、判定部24は、重複している1バイト長を引いた8バイト長を検出量としてカウントする。
また、判定部24は、テキスト内において、先に検出された誤変換文字列と重ならず、且つ、連続する誤変換文字列を検出した場合、当該後に検出された誤変換文字列のバイト長を先に検出された誤変換文字列のバイト長に足した値を検出量とする。例えば、判定部24は、図7に示す6バイト長の誤変換文字列を検出した後、図11の下に示す7バイト目から始まる2バイト長の誤変換文字列を検出したとする。この場合、互いの誤変換文字列が重複しないので、判定部24は、8バイト長を検出量としてカウントする。尚、判定部24は、複数の誤変換文字列が連続しておらず、途切れている場合であっても、それぞれの誤変換文字列のバイト長を足してもよい。
この後、判定部24は、予め定められたバイト、例えば、40バイト目まで上述の処理を実行して、テキストに含まれる誤変換文字列リスト32の誤変換文字列を検出して、検出量の合計を算出する。
判定部24は、算出した検出量が閾値Th以上か否かを判定する(S26)。閾値Thの一例は、20バイトである。判定部24は、算出した検出量が閾値Th未満と判定すると(S26:No)、判定対象のテキストが正常な文字コード種別によって変換されていると判定して(S28)、ステップS26に戻る。検出量が閾値Th未満とは、誤変換されている誤変換文字列がテキストにほとんど含まれていないことを意味する。
一方、判定部24は、算出した検出量が閾値Th以上と判定すると(S26:Yes)、判定対象のテキストが、誤った文字コード種別によって誤変換されたと判定する(S30)。検出量が閾値Th以上とは、誤変換文字列リスト32に含まれる誤変換された誤変換文字列がテキストに多く含まれることを意味する。
判定部24は、変換前後の文字コード種別及び誤認識した文字コード種別を誤変換の種類として判定する(S32)。判定部24は、検出した誤変換文字列に関連付けられている変換前後の文字コード種別及び誤認識した文字コード種別に基づいて、各文字コード種別を判定する。
例えば、判定部24は、検出した誤変換文字列が図3の誤変換文字列リスト32の上段部分に含まれる場合、変換前の文字コード種別をShift−JIS、変換後の文字コード種別をUTF−8、及び、誤認識した文字コード種別をLatin−1と判定する。判定部24は、判定した各文字コード種別を誤変換の種類として修正部26へ出力する。
修正部26は、判定部24から取得した誤変換の種類に含まれる文字コード種別に基づいて、変換後の誤変換文字列を含むテキストを、変換前の正常な文字列を含むテキストに逆変換する(S34)。例えば、修正部26は、変換後の文字コード種別としてUTF−8、及び、誤認識した文字コード種別としてLatin−1を取得すると、テキストの文字コード種別をUTF−8と見なして、文字コード種別Latin−1への変換を実行する。これにより、修正部26は、誤変換されていたテキストの文字列を、変換前の正常な文字コード種別であるShift−JISの文字列へと逆変換する。より具体的には、図3に示す文字コード種別Shift−JISの文字列WR101の文字コード種別をLatin−1と誤認識してUTF−8に誤変換した誤変換文字列WR201を入力されたテキストが含むとする。修正部26は、この誤変換文字列WR201の文字コード種別をUTF−8と認識して文字コード種別Latin−1への変換を実行することにより、誤変換文字列WR201を文字コード種別Shift−JISによって正しく認識される文字列WR101へと逆変換する。
次に、修正部26は、逆変換したテキストを正常変換する(S36)。例えば、修正部26は、変換前の文字コード種別としてShift−JISを、及び、変換後の文字コード種別としてUTF−8を取得すると、文字コード種別Shift−JISから文字コード種別UTF−8へ正常に再変換して、テキストを生成する。これにより、修正部26は、文字コード種別UTF−8によって正しく認識される文字化けしていないテキストを生成できる。この後、修正部26は、正常に再変換したテキストを表示装置または印刷装置等に出力してもよい。
上述したように判定装置10では、記憶部14に記憶された誤変換文字列リスト32に含まれる誤変換文字列が、入力された判定対象のテキスト内に含まれるか否かによって、判定部24が、当該テキストが誤変換されたか否かを判定している。このように、正常に変換された文字列とは略一致しない誤変換された誤変換文字列によってテキストの誤変換を判定しているので、判定装置10は、略確実に精度よく誤変換を判定できる。
更に、判定装置10では、判定部24が、誤変換文字列リスト32の誤変換文字列に関連付けられた変換前後の文字コード種別及び誤認識した文字コード種別に基づいて、各文字コード種別を判定できる。これにより、判定部24は、各文字コード種別を正確に判定できる。このため、修正部26は、判定部24から変換後の文字コード種別及び誤認識された文字コード種別を取得することによって、精度よく変換前の文字コード種別にテキストを逆変換できる。更に、修正部26は、判定部24から変換前後の文字コード種別を取得することによって、逆変換したテキストを変換後の文字コード種別に正常に再変換できる。
次に、上述の実施形態を変更した実施形態について説明する。図12は、判定装置110の全体構成図である。図12において、図1と同様の機能及び構成を有する部材については説明を省略して、変更点を中心に説明する。
図12に示すように、判定装置110は、制御部12と、記憶部14とを備える。制御部12は、文字列生成部20と、取得部22と、判定部24と、修正部26とを有する。
文字列生成部20は、記憶部14に記憶された文字列リスト30に含まれる変換前の文字列を取得する。文字列生成部20は、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に正常に変換した正常変換文字列を含む正常変換文字列リスト34を生成して、記憶部14に記憶させる。
取得部22は、入力されたテキストを取得して、判定部24へ取得する。取得部22は、正常変換文字列及び正常変換文字列の文字コード種別を含む正常変換文字列リスト34を記憶部14から取得する。取得部22は、取得した正常変換文字列リスト34を判定部24へ出力する。
判定部24は、入力されたテキストをある文字コード種別と認識して、他の全ての文字コード種別で逆変換した1以上のテキストを生成する。判定部24は、入力されたテキスト中に正常変換文字列が含まれることを条件として文字コード種別が正しく逆変換されたことを検出する。また、判定部24は、逆変換を判定するときに用いた正常変換文字列リスト34の正常変換文字列の文字コード種別に基づいて、入力されたテキストの誤変換を検出する。
修正部26は、判定部24から取得した逆変換されたテキストを正常変換する。
図13は、判定装置110の文字列生成部20による正常変換文字列リスト34の生成処理を説明するフローチャートである。図14は、文字列生成部20によって生成される正常変換文字列リスト34の一例を示す。
図13に示すように、文字列生成部20は、記憶部14の文字列リスト30の文字列を取得する(S110)。文字列生成部20は、文字列を正常に変換する(S112)。例えば、文字列生成部20は、取得した文字列の文字コード種別がUTF8である場合、文字コード種別をUTF8と認識して、当該文字列をShift−JIS、及び、EUC−JP等の異なる文字コード種別によって正常変換する。これにより、文字列生成部20は、変換後の文字列を正常変換文字列として生成する。
文字列生成部20は、正常に変換した正常変換文字列を正常変換文字列リスト34に登録する(S116)。例えば、文字列生成部20は、変換後の文字コード種別に関連付けられた複数の正常変換文字列を含む正常変換文字列リスト34を生成して、記憶部14に記憶させる。
文字列生成部20は、全ての文字列に対して、ステップS110からS116を実行して(S118:Yes)、生成処理を終了する。
これにより、文字列生成部20は、図14に示すように、変換後の文字コード種別と、変換後の複数の正常変換文字列とが関連付けられた正常変換文字列リスト34を生成する。変換後の文字コード種別とは、当該文字列リスト30を正常に変換した後の文字コード種別のことである。
例えば、図14に示す正常変換文字列リスト34の上段部には、記憶部14に記憶された文字列の文字コード種別をUTF−8と正しく認識して、文字コード種別Shift−JISに正常変換した正常変換文字列が登録されている。
図15は、取得部22、判定部24及び修正部26による誤変換の判定処理を説明するフローチャートである。誤変換の判定処理は、制御部12が判定プログラムを読み込むことによって実行される。
図15に示すように、取得部22は、テキストを取得する(S120)。取得部22は、取得したテキストを判定部24へと出力する。
取得部22は、記憶部14から全ての正常変換文字列を含む正常変換文字列リスト34を取得する(S122)。取得部22は、取得した正常変換文字列リスト34を判定部24に出力する。
判定部24は、取得部22から取得したテキストを文字コード種別によって逆変換する(S123)。例えば、判定部24は、いずれかの文字コード種別とテキストを認識して、全ての文字コード種別へとテキストを逆変換する。更に、判定部24は、別の文字コード種別とテキストを認識して、全ての文字コード種別へとテキストを逆変換する。判定部24は、これを繰り返して、全ての文字コード種別のそれぞれと認識して、全ての文字コード種別へとテキストを逆変換する。従って、判定部24は、文字コード種別の数の略2乗の個数の逆変換したテキストを生成する。判定部24が、逆変換した複数のテキストのうち、いずれかのテキストは、取得部22が取得したテキストが変換される前の正常なテキストとなる。
判定部24は、逆変換したテキストに含まれる文字列から、正常変換文字列リスト34に含まれる正常変換文字列を検出する(S124)。判定部24は、検出された正常変換文字列のバイト数の合計を変換の種類毎に検出量として算出する。変換の種類とは、判定部24が逆変換するときに認識したテキストの文字コード種別、判定部24が逆変化させた文字コード種別、及び、正常変換文字列に関連付けられている変換後の文字コード種別の組み合わせである。判定部24によるテキスト内の正常変換文字列の検出方法及び検出量の算出方法は、図4のステップS24におけるテキスト内の誤変換文字列の検出方法と同様である。判定部24は、正常変換文字列リスト34のそれぞれに対して検出量を算出する。本実施形態においても、判定部24は、例えば、テキストの40バイト分で検出量を算出すればよい。
判定部24は、各正常変換文字列リスト34による検出量が閾値Th以上か否かを判定する(S126)。閾値Thの一例は、20バイトである。判定部24は、判定対象のテキストの検出量が閾値Th未満と判定すると(S126:No)、判定対象のテキストを誤逆変換と判定して(S128)、次の判定対象のテキストに対してステップS126を繰り返す。検出量が閾値Th未満とは、正常変換文字列リスト34に含まれる正常変換文字列がテキストにほとんど含まれないことを意味する。即ち、逆変換されたテキストの文字列は、文字化けする。
一方、判定部24は、判定対象のテキストの検出量が閾値Th以上と判定すると(S126:Yes)、判定対象のテキストの逆変換を正常逆変換と判定する(S130)。検出量が閾値Th以上とは、正常変換文字列リスト34に含まれる正常変換文字列がテキストに多く含まれることを意味する。即ち、逆変換されたテキストの文字列は、文字化けすることなく、意味のある文字として認識される。
次に、判定部24は、入力されたテキストが誤変換されたか否かを判定する(S132)。例えば、判定部24は、正常逆変換と判定した検出量を算出した正常変換文字列の変換後の文字コード種別と、逆変換した文字コード種別とが一致するか否かによって、入力されたテキストが誤変換か否かを判定する。
判定部24は、入力されたテキストが誤変換でない、即ち、正常変換されたと判定すると(S132:No)、判定処理を終了する。例えば、判定部24が、入力されたテキストを文字コード種別UTF−8と認識して、文字コード種別Shift−JISに逆変換したテキストを正常逆変換と判定したとする。この場合、判定部24は、正常逆変換と判定した検出量の算出を、図14に示す変換後の文字コード種別Shift−JISの正常変換文字列によって算出した場合、入力されたテキストが正常変換であると判定する。これは、入力されたテキストが、文字コード種別Shift−JISと正しく認識されて文字コード種別UTF−8に変換されているからである。従って、判定部24は、当該入力されたテキストを文字コード種別UTF−8と認識して、文字コード種別Shift−JISに正常逆変換したことになる。
一方、判定部24は、入力されたテキストが誤変換であると判定すると(S132:Yes)、ステップS134の処理を実行する。例えば、判定部24は、正常逆変換と判定した検出量の算出を、図14に示す変換後の文字コード種別EUC−JPの正常変換文字列によって算出した場合、入力されたテキストが誤変換であると判定する。これは、入力されたテキストが、文字コード種別EUC−JPであるにも関わらず、文字コード種別Shift−JISと誤って認識されて文字コード種別UTF−8に変換されているからである。この場合、判定部24は、当該入力されたテキストを文字コード種別UTF−8と認識して、文字コード種別Shift−JISへ正常逆変換したことにより、文字コード種別EUC−JPによって認識されるテキストを生成することになる。
この場合、判定部24は、逆変換されて正常逆変換且つ誤変換と判定されたテキスト、当該テキストを逆変換するときに認識した文字コード種別であるUTF−8及び、逆変換されたテキストの正しい文字コード種別であるEUC−JPを修正部26に出力する。
修正部26は、判定部24から取得した逆変換されたテキスト、当該テキストを認識した文字コード種別、及び、正しい文字コード種別に基づいて、テキストを認識した文字コード種別に正常に再変換する(S134)。上述の場合、修正部26は、逆変換されたテキストを文字コード種別EUC−JPと認識して、文字コード種別UTF−8に正常に再変換する。この後、修正部26は、正常に再変換した文字コード種別UTF−8のテキストを表示装置または印刷装置等に出力する。
判定装置110では、文字コード種別の数の略2乗に文字列の数をかけた個数だけ正常変換文字列リスト34を記憶部14に記憶すればよいので、判定に必要な記憶部14の容量を低減できる。
上述した実施形態の構成の処理内容、接続関係、個数等は適宜変更してよい。また、実施形態同士を組み合わせてもよい。例えば、判定装置は、誤変換文字列リスト32及び正常変換文字列リスト34によって、誤変換及び正常変換の両方を判定するように構成してもよい。
また、図12に示す判定装置110において、入力されたテキストが正常に変換されたか否かを判定してもよい。
この場合、文字列生成部20は、記憶部14に記憶された文字列リスト30に含まれる変換前の文字列を取得する。文字列生成部20は、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に正常に変換した正常変換文字列を含む正常変換文字列リスト34を生成して、記憶部14に記憶させる。
取得部22は、正常変換文字列を記憶部14から取得する。取得部22は、取得した正常変換文字列を判定部24へ出力する。
判定部24は、入力されたテキスト中に正常変換文字列が含まれることを条件として文字コード種別が正しく変換されたことを検出する。例えば、判定部24は、入力されたテキストから検出された正常変換文字列のバイト長またはバイト数が閾値以上となる場合、正常変換されたと判定してもよい。
これにより、判定装置110では、正常に変換された正常変換文字列によって、判定部24が入力されたテキストが正常に変換されたか否かを判定できる。
また、記憶部14が記憶する誤変換文字列リスト32または正常変換文字列リスト34に日本語等の言語を関連付けてもよい。これにより、取得部22は、誤変換文字列リスト32または正常変換文字列リスト34に含まれる当該言語の正常変換文字列を取得して、判定部24へ出力する。判定部24は、例えば、入力されたテキスト中に誤変換文字列リスト32の誤変換文字列が含まれるか否かを判定する。判定部24は、テキストに誤変換文字列が含まれると判定した場合、当該誤文字列の誤変換文字列リスト32の言語に基づいて、テキストの言語を判定してもよい。
上述の実施形態では、テキストの検索対象の最初の例えば40バイト内の検出量と閾値とを比較して、誤変換または正常変換を判定する例を示したが、判定方法はこれに限られない。例えば、他の判定方法として、テキスト全体に占める誤変換文字列または正常変換文字列の割合と閾値とを比較して、誤変換または正常変換を判定してもよい。また、Xバイト以上連続する誤変換文字列または正常変換文字列の個数と閾値とを比較して、誤変換または正常変換を判定してもよい。Xバイトは、例えば、2バイト以上である。
図16は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、判定装置10、110の一例である。コンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示部2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、及び、ハードディスクドライブ2040を有する入出力部と、入出力コントローラ2084に接続されるROM2010、メモリドライブ2050及び入出力チップ2070を有するレガシー入出力部とを備える。
ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示部2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用する表示プログラム等のプログラム及びデータを格納する。
また、入出力コントローラ2084には、ROM2010と、メモリドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。メモリドライブ2050は、メモリカード2090から例えば表示プログラム等のプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、メモリドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、メモリカード2090、又はICカード等の記録媒体に格納されて利用者によって提供される。表示プログラム等のプログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
コンピュータ1900にインストールされ、コンピュータ1900を判定装置10、110として機能させるプログラムは、文字列生成モジュール、取得モジュール、判定モジュール、及び、修正モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、文字列生成モジュール、取得モジュール、判定モジュール、及び、修正モジュールとしてそれぞれ機能させる。
これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である文字列生成モジュール、取得モジュール、判定モジュール、及び、修正モジュールとして機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の判定装置10、110が構築される。
一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、又はメモリカード2090等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
また、CPU2000は、ハードディスクドライブ2040、メモリドライブ2050(メモリカード2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、メモリカード2090の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
10 判定装置
12 制御部
14 記憶部
20 文字列生成部
22 取得部
24 判定部
26 修正部
30 文字列リスト
32 誤変換文字列リスト
34 正常変換文字列リスト
110 判定装置
1900 コンピュータ
2000 CPU
2010 ROM
2020 RAM
2030 通信インターフェイス
2040 ハードディスクドライブ
2050 メモリドライブ
2070 入出力チップ
2075 グラフィック・コントローラ
2080 表示部
2082 ホスト・コントローラ
2084 入出力コントローラ
2090 メモリカード

Claims (12)

  1. 入力されたテキストの種類を判定する判定装置であって、
    予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得部と、
    入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定部と、
    を備え
    前記取得部は、変換前の文字列の文字コード種別を誤って認識して他の文字コード種別の文字列に誤変換した誤変換文字列を前記記憶装置から取得し、
    前記判定部は、入力されたテキスト中に前記誤変換文字列が含まれることを条件として文字コード種別の誤変換を検出する
    判定装置。
  2. 前記判定部は、閾値以上の長さまたは数の前記誤変換文字列が入力されたテキスト中に含まれることを条件として文字コード種別の誤変換を検出する
    請求項に記載の判定装置。
  3. 前記取得部は、誤変換の種類に対応付けられた誤変換文字列を前記記憶装置から取得し、
    前記判定部は、入力されたテキスト中に含まれる誤変換文字列がいずれの種類の誤変換に対応するものであるかに基づいて、誤変換の種類を判定する
    請求項1または2に記載の判定装置。
  4. 前記判定部が判定した誤変換の種類に基づいて、入力されたテキストを変換前の文字コード種別のテキストに戻す修正部を更に備える請求項に記載の判定装置。
  5. 前記修正部は、前記判定部が判定した誤変換の種類に基づいて、変換前の文字コード種別に戻したテキストを変換後の文字コード種別の文字列に再変換する請求項に記載の判定装置。
  6. 入力されたテキストの種類を判定する判定装置であって、
    予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得部と、
    入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定部と、
    を備え、
    前記取得部は、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に変換した正常変換文字列を前記記憶装置から取得し、
    前記判定部は、入力されたテキスト中に前記正常変換文字列が含まれることを条件として文字コード種別が正しく変換されたことを検出する
    判定装置。
  7. 入力されたテキストの種類を判定する判定装置であって、
    予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得部と、
    入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定部と、
    を備え、
    前記取得部は、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に変換した正常変換文字列を前記記憶装置から取得し、
    前記判定部は、入力されたテキストを1以上の文字コード種別で逆変換したテキストに前記正常変換文字列が含まれることを条件として、入力されたテキストの種類を判定する
    判定装置。
  8. 前記取得部は、前記正常変換文字列の文字コード種別を前記記憶装置から取得し、
    前記判定部は、前記正常変換文字列の文字コード種別に基づいて、入力されたテキストの誤変換を検出する
    請求項に記載の判定装置。
  9. コンピュータが入力されたテキストの種類を判定する判定方法であって、
    前記コンピュータが、予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得段階と、
    前記コンピュータが、入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定段階と、
    を備え
    前記取得段階において、前記コンピュータが、変換前の文字列の文字コード種別を誤って認識して他の文字コード種別の文字列に誤変換した誤変換文字列を前記記憶装置から取得し、
    前記判定段階において、前記コンピュータが、入力されたテキスト中に前記誤変換文字列が含まれることを条件として文字コード種別の誤変換を検出する
    判定方法。
  10. コンピュータが入力されたテキストの種類を判定する判定方法であって、
    前記コンピュータが、予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得段階と、
    前記コンピュータが、入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定段階と、
    を備え、
    前記取得段階において、前記コンピュータが、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に変換した正常変換文字列を前記記憶装置から取得し、
    前記判定段階において、前記コンピュータが、入力されたテキスト中に前記正常変換文字列が含まれることを条件として文字コード種別が正しく変換されたことを検出する
    判定方法。
  11. コンピュータが入力されたテキストの種類を判定する判定方法であって、
    前記コンピュータが、予め定められた種類のテキストに用いられうる文字列を記憶する記憶装置から前記文字列を取得する取得段階と、
    前記コンピュータが、入力されたテキスト中に前記文字列が含まれるか否かに基づいて、前記テキストの種類を判定する判定段階と、
    を備え、
    前記取得段階において、前記コンピュータが、変換前の文字列の文字コード種別を正しく認識して他の文字コード種別の文字列に変換した正常変換文字列を前記記憶装置から取得し、
    前記判定段階において、前記コンピュータが、入力されたテキストを1以上の文字コード種別で逆変換したテキストに前記正常変換文字列が含まれることを条件として、入力されたテキストの種類を判定する
    判定方法。
  12. コンピュータに、請求項9から11のいずれか一項に記載の判定方法を実行させるためのプログラム。
JP2013262880A 2013-12-19 2013-12-19 判定装置、判定方法、及び、プログラム Active JP6300512B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013262880A JP6300512B2 (ja) 2013-12-19 2013-12-19 判定装置、判定方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013262880A JP6300512B2 (ja) 2013-12-19 2013-12-19 判定装置、判定方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2015118625A JP2015118625A (ja) 2015-06-25
JP6300512B2 true JP6300512B2 (ja) 2018-03-28

Family

ID=53531261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013262880A Active JP6300512B2 (ja) 2013-12-19 2013-12-19 判定装置、判定方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6300512B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04267429A (ja) * 1991-02-21 1992-09-24 Nec Software Ltd コード変換処理方式
JP2907124B2 (ja) * 1996-05-17 1999-06-21 日本電気株式会社 ソースユニットのファイル転送時におけるコード体系の自動識別方式
US6157905A (en) * 1997-12-11 2000-12-05 Microsoft Corporation Identifying language and character set of data representing text
WO2002095614A1 (fr) * 2001-05-24 2002-11-28 Izumi Suzuki Procede d'identification d'un systeme de code de type langage ou par caracteres

Also Published As

Publication number Publication date
JP2015118625A (ja) 2015-06-25

Similar Documents

Publication Publication Date Title
CN108089974B (zh) 利用定义的输入格式来测试应用
JP6044963B2 (ja) 情報処理装置、方法及びプログラム
US10452700B1 (en) Systems and methods for parsing log files using classification and plurality of neural networks
JP5936240B2 (ja) データ処理装置、データ処理方法、およびプログラム
US9626354B2 (en) Systems and methods for using tone indicator in text recognition
US10083172B2 (en) Native-script and cross-script chinese name matching
US9870351B2 (en) Annotating embedded tables
US10896287B2 (en) Identifying and modifying specific user input
US9164964B2 (en) Context-aware text document analysis
JPWO2014050981A1 (ja) テキスト情報監視用辞書作成装置、テキスト情報監視用辞書作成方法、及び、テキスト情報監視用辞書作成プログラム
US9495638B2 (en) Scalable, rule-based processing
JP6252296B2 (ja) データ識別方法、データ識別プログラム及びデータ識別装置
US9892107B2 (en) Associating mentioned items between documents
JP6300512B2 (ja) 判定装置、判定方法、及び、プログラム
US9990339B1 (en) Systems and methods for detecting character encodings of text streams
CN112748930A (zh) 编译检测方法、装置、设备及存储介质
WO2018179729A1 (ja) インデックス生成プログラム、データ検索プログラム、インデックス生成装置、データ検索装置、インデックス生成方法、及びデータ検索方法
CN117892724B (zh) 一种文本检测方法、装置、设备及存储介质
US20230377358A1 (en) Method and apparatus for dechipering obfuscated text for cyber security
CN113505570B (zh) 参考文献参见落空的审校方法、装置、设备及存储介质
US11356853B1 (en) Detection of malicious mobile apps
JP7388677B2 (ja) 入力支援装置、入力支援方法、及びプログラム
US10943056B1 (en) System and method for identifying location of content within an electronic document
WO2022123716A1 (ja) 述語項構造修正プログラム、述語項構造修正方法、および情報処理装置
KR101900813B1 (ko) 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161020

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20161020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20161020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170919

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: 20180220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180227

R150 Certificate of patent or registration of utility model

Ref document number: 6300512

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250