Subset-Group
説明
1 つまたは複数のパラメータでパターンマッチングを使用して、文字列が指定したパターン全体と一致するか、または文字列内のサブ文字列が指定したパターンと一致するかを調べます。マッチングは正規表現 (POSIX 標準の一部) を使用して実行します。大文字と小文字は区別しません。
構文
<ie:webject name="Subset-Group" type="GRP">
<ie:param name="CASE_IGNORE" data="[TRUE | FALSE]"/>
<ie:param name="CLASS" data="class"/>
<ie:param name="FILTER" data="string_pattern"/>
<ie:param name="FILTER_MODE" data="[MATCH | NOMATCH]"/>
<ie:param name="FILTER_TYPE" data="[IE | REGEXP]"/>
<ie:param name="GROUP_IN" data="input_group_name"/>
<ie:param name="GROUP_OUT" data=" output_group_name"/>
</ie:webject>
パラメータ
必須
|
選択
|
オプション
|
FILTER
|
|
CASE_IGNORE
|
GROUP_IN
|
|
CLASS
|
GROUP_OUT
|
|
FILTER_MODE
|
|
|
FILTER_TYPE
|
CASE_IGNORE
大文字と小文字のフラグとして機能します。TRUE を指定すると、一致をサーチするときに大文字と小文字は無視されます。FALSE を指定すると、大文字と小文字は区別されます。このパラメータのデフォルトは FALSE です。このパラメータはオプションです。
CLASS
GROUP_OUT パラメータによって指定された出力グループに含まれているオブジェクトのタイプを指定します。たとえば、Webject が CLASS=MyClassName と GROUP_OUT=data_1 を指定する場合、出力グループの XML 表現には以下のタグが含まれます。
<MyClassName NAME="data_1" TYPE="Object" STATUS="0">
</MyClassName>
このパラメータのデフォルトは Unknown-Class-Name です。これはオプションのパラメータです。
FILTER
文字列またはサブ文字列が一致する必要のあるパターンを指定します。パターンに含むことができるワイルドカード文字セットは、指定したフィルタタイプによって異なります。詳細については、FILTER_TYPE パラメータの説明を参照してください。
このパラメータは必須です。
FILTER_MODE
指定したパターンと一致する値を渡すか、または指定したパターンと一致しない値を渡すかを指定します。有効な値は、MATCH および NOMATCH です。このパラメータのデフォルトは MATCH です。このパラメータはオプションです。
FILTER_TYPE
パターンマッチングに使用するフィルタタイプを指定します。有効な値は、Info*Engine では IE、正規表現では REGEXP です。
IE を指定した場合、以下の文字は対応する正規表現に変換されます。
IE
|
正規表現
|
?
|
.
|
*
|
.*
|
pattern
|
^pattern$
|
IE 文字から正規表現への変換後、パターンマッチングが実行されます。
指定するパターンが比較的簡単なパターンである場合は、前の表にリストした IE 文字を使用できます。より複雑なパターンを指定する場合は、FILTER_TYPE パラメータの値として REGEXP を指定し、FILTER パラメータのパターンに必要な正規表現を含めます。
このパラメータのデフォルトは IE です。このパラメータはオプションです。
GROUP_IN
特定のサブセットを選択するグループを指定します。このパラメータは必須です。
GROUP_OUT
サブセットの保存先となる出力グループの名前を指定します。このパラメータは必須です。
例
以下の例は、パターンマッチングを使用して、文字列が指定したパターン全体と一致するか、または文字列内のサブ文字列が指定したパターンと一致するかを調べます。最初の Subset-Group Webject は、指定された FILTER と一致するアイテムを渡し、"matched" という名前の出力グループにそれらのアイテムを配置します。以下の Subset-Group Webject は、指定された FILTER と一致しないアイテムを渡し、"nomatch" という名前の出力グループにそれらのアイテムを配置します。
<%@page language="java" session="false"%>
<%@taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie"%>
<!-- Form a new group that is a subset of a group.-->
<ie:task uri="com/company/CreateGroup.xml"/>
<ie:webject name="Subset-Group" type="GRP">
<ie:param name="GROUP_IN" data="createdgroup"/>
<ie:param name="FILTER" data="NAME='^J'"/>
<ie:param name="FILTER_TYPE" data="REGEXP"/>
<ie:param name="FILTER_MODE" data="MATCH"/>
<ie:param name="CASE_IGNORE" data="TRUE"/>
<ie:param name="CLASS" data="MATCHEDITEMS"/>
<ie:param name="GROUP_OUT" data="matched"/>
</ie:webject>
<ie:webject name="Subset-Group" type="GRP">
<ie:param name="GROUP_IN" data="createdgroup"/>
<ie:param name="FILTER" data="NAME='^J'"/>
<ie:param name="FILTER_TYPE" data="REGEXP"/>
<ie:param name="FILTER_MODE" data="NOMATCH"/>
<ie:param name="CASE_IGNORE" data="TRUE"/>
<ie:param name="CLASS" data="NONMATCHEDITEMS"/>
<ie:param name="GROUP_OUT" data="nomatch"/>
</ie:webject>
<ie:webject name="Return-Groups" type="GRP">
<ie:param name="Group_in" data="matched"/>
<ie:param name="Group_in" data="nomatch"/>
</ie:webject>