Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change syle to normal: pi_logipat.jax #1807

Merged
merged 1 commit into from
Nov 19, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 27 additions & 28 deletions doc/pi_logipat.jax
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Copyright: (c) 2004-2016 by Charles E. Campbell *logiPat-copyright*


*logiPat-arg* *logiPat-input* *logiPat-pattern* *logiPat-operators*
Boolean logic pattern(論理集合演算パターン)は以下によって構成される
Boolean logic pattern (論理集合演算パターン) は以下によって構成される

オペレータ ! = 否定
| = 論理和
Expand All @@ -30,69 +30,68 @@ Copyright: (c) 2004-2016 by Charles E. Campbell *logiPat-copyright*

*logiPat-cmd*
:LogiPat {boolean-logic pattern} *:LogiPat*
:LogiPat は論理集合演算を引数に取るコマンドです
:LogiPat は論理集合演算を引数に取るコマンドである
(|logiPat-arg|)。

:LP {boolean-logic pattern} *:LP*
:LP は :LogiPat の省略形式コマンドです (|logiPat-cmd|)。
:LP は :LogiPat の省略形式コマンドである (|logiPat-cmd|)。

:LPE {boolean-logic pattern} *:LPE*
検索は行いませんが論理集合演算パターンから
正規表現への変換を行い画面に表示します
検索は行わないが論理集合演算パターンから正規表現への変換を行い
画面に表示する

:LogiPatFlags {search flags} *LogiPat-flags*
LogiPat は |search()| コマンドを使用します。search()
に指定されるフラグを :LogiPatFlags に渡します
LogiPat は |search()| コマンドを使用する。search() に指定され
るフラグを :LogiPatFlags に渡す

:LPF {search flags} *:LPF*
:LPF は :LogiPatFlags の省略形式です
:LPF は :LogiPatFlags の省略形式である

:let pat=LogiPat({boolean-logic pattern}) *LogiPat()*
LogiPat() を直接呼び出す場合は検索は行いません。
しかし論理集合演算パターンから正規表現への変換が
行われ返却されます。
LogiPat() を直接呼び出す場合は検索は行わない。しかし論理集合演
算パターンから正規表現への変換が行われ返却される。

パターン内部で " をマッチしたい場合はパターンにデリミタを
用いるのではなく2重打ちします
パターン内部で " をマッチしたい場合はパターンにデリミタを用いるのでは
なく 2 重にする


==============================================================================
3. LogiPat 使用例 *logiPat-examples*

LogiPat は論理集合演算を引数に取り抜き出す為の正規表現を提供します
以下に例を列挙します:
LogiPat は論理集合演算を引数に取り抜き出す為の正規表現を提供する
以下に例を列挙する:
>
:LogiPat "abc"
< 文字列 :abc: を含む行を検索します
< 文字列 :abc: を含む行を検索する
>
:LogiPat "ab""cd"
< 文字列 :ab"cd: を含む行を検索します
< 文字列 :ab"cd: を含む行を検索する
>
:LogiPat !"abc"
< 文字列 :abc: を含まない行を検索します
< 文字列 :abc: を含まない行を検索する
>
:LogiPat "abc"|"def"
< 文字列 :abc: もしくは :def: のどちらかを含む行を検索します
< 文字列 :abc: もしくは :def: のどちらかを含む行を検索する
>
:LogiPat !("abc"|"def")
< 文字列 :abc: または :def: をどちらも含まない行を検索します
< 文字列 :abc: または :def: をどちらも含まない行を検索する
>
:LogiPat "abc"&"def"
< 文字列 :abc: と :def: を両方含む行を検索します
< 文字列 :abc: と :def: を両方含む行を検索する
>
:let pat= LogiPat('!"abc"')
< 文字列 :abc: を含む全ての行にマッチする正規表現を返します。
ダブルクォートを通常のパターンとして LogiPat へ渡すには
論理集合オペレータと区別する為にネストして渡します
< 文字列 :abc: を含む全ての行にマッチする正規表現を返す。ダブル
クォートを通常のパターンとして LogiPat へ渡すには論理集合オペ
レータと区別する為にネストして渡す


==============================================================================
4. 注意 *logiPat-caveat*

"not" オペレータは脆いかもしれません; つまり + (論理積)と | (論理和)
オペレータと合わせた場合にうまく動作しないのです
期待通りにマッチさせる為にはできれば :set hls でパターンを良く試して下
さい
"not" オペレータは脆いかもしれない。つまり、& (論理積) と | (論理和)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

豪快に間違ってたんですねぇ...

のオペレータとの組み合わせでは、必ずしもうまく動作しない可能性がある
期待通りにマッチさせる為には、できれば :set hls でパターンを良く試して
ほしい

==============================================================================
5. LogiPat 変更履歴 *logiPat-history*
Expand Down