Up: 目次   [Index]


パターンにおける論理演算子

*pi_logipat.txt*        論理パターン                    Jun 22, 2015

Author:  Charles E. Campbell  <NdrOchip@ScampbellPfamily.AbizM>
Copyright: (c) 2004-2015 by Charles E. Campbell *logiPat-copyright*
           The VIM LICENSE applies to LogiPat.vim and LogiPat.txt
           (see |copyright|) except use "LogiPat" instead of "Vim"
           No warranty, express or implied.  Use At-Your-Own-Risk.

1. 目次

1. 目次|logiPat-contents|
2. LogiPat マニュアル|logiPat-manual|
3. LogiPat 使用例|logiPat-examples|
4. 注意|logiPat-caveat|
5. LogiPat 變更履歷|logiPat-history|

2. LogiPat マニュアル

Boolean logic pattern (論理集合演算パターン) は以下によつて構成される

オペレータ! = 否定
| = 論理和
& = 論理積
グルーピング( ... )
パターン"pattern"
:LogiPat {boolean-logic pattern}

:LogiPat は論理集合演算を引數に取るコマンドです (|logiPat-arg|)。

:LP {boolean-logic pattern}

:LP は :LogiPat の省略形式コマンドです。

:LPE {boolean-logic pattern}

檢索は行ひませんが論理集合演算パターンから正規表現への變換を行ひ畫面に表示します。

:LogiPatFlags {search flags}

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

:LPF {search flags}

:LPF は :LogiPatFlags の省略形式です。

:let pat=LogiPat({boolean-logic pattern})

LogiPat() を直接呼び出す場合は檢索は行ひません。しかし論理集合演算パターンから正規表現への變換が行はれ返却されます。

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

3. LogiPat 使用例

LogiPat は論理集合演算を引數に取り拔き出す爲の正規表現を提供します。以下に例を列擧します:

:LogiPat "abc"

文字列 :abc: を含む行を檢索します

:LogiPat "ab""cd"

文字列 :ab"c: を含む行を檢索します

:LogiPat !"abc"

文字列 :abc: を含まない行を檢索します

:LogiPat "abc"|"def"

文字列 :abc: もしくは :def: のどちらかを含む行を檢索します

:LogiPat !("abc"|"def")

文字列 :abc: または :def: をどちらも含まない行を檢索します

:LogiPat "abc"&"def"

文字列 :abc: と :def: を兩方含む行を檢索します

:let pat= LogiPat(’!"abc"’)

文字列 :abc: を含む全ての行にマッチする正規表現を返します。ダブルクォートを通常のパターンとして LogiPat へ渡すには論理集合オペレータと區別する爲にネストして渡します。

4. 注意

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

5. LogiPat 變更履歷

v4 Jun 22, 2015 * LogiPat has been picked up by Bram M for standard
                  plugin distribution; hence the name change
v3 Sep 25, 2006 * LP_Or() fixed; it now encapsulates its output
                  in \%(...\) parentheses
   Dec 12, 2011 * |@ref{:LPE}| added
                * "" is mapped to a single " and left inside patterns
v2 May 31, 2005 * LPF and LogiPatFlags commands weren't working
v1 May 23, 2005 * initial release

Up: 目次   [Index]