Systemwalker Centric Manager スクリプトガイド - UNIX共通 - - Microsoft(R) Windows(R) 2000/ Microsoft(R) Windows Server(TM) 2003 - |
目次
索引
![]() ![]() |
スクリプト内では、正規表現を使用することができます。
以下にスクリプトでの正規表現について説明します。
. |
任意の1文字に一致する。 |
* |
直前のパターン要素の0回以上の繰り返しに一致する。 |
+ |
直前のパターン要素の1回以上の繰り返しに一致する。 |
? |
直前のパターン要素の0回、または1回の出現に一致する。 |
( ) |
サブパターンをグループ化する。 |
| |
選択 |
[ ] |
文字集合に含まれる文字に一致する。 |
^ |
パターンの先頭に指定された場合、文字列の先頭に一致する。 |
$ |
パターンの末尾に指定された場合、文字列の末尾に一致する。 |
正規表現記号のうち、スクリプト上の特殊文字に当たるものがあるため、使用する場合には以下のように記述してください。
“[”、“]”、“$”、“(”、“)”
以下のどちらかの方法で記述します。
例:regexpの引数に正規表現の“[0−9]”を指定します。
regexp "\[0−9\] " $text
または、
regexp {[0−9]} $text
正規表現記号を正規表現の中で、単なる文字として扱う場合は、“\”(円記号)を直前に付加してください。
ただし、円記号はスクリプトとしての特殊文字でもあるため、記述する際には“\\”とするか正規表現全体を中括弧で囲む必要があります。
例1:文字“*”を含んでいるかを検査します。
regexp "\\*" $text
または、
regexp {\*} $text
例2:文字“[”を含んでいるかを検査します。
regexp "\\\[" $text
または、
regexp {\[} $text
これに伴い、正規表現の中で円記号自身を単なる文字として扱う場合は、“\\”と記述する必要があります。
この場合も、円記号がスクリプトとしての特殊文字を考慮し、2つの円記号それぞれを“\\”とするか、正規表現全体を中括弧で囲む必要があります。
例3:文字“\”を含んでいるかを検査します。
regexp "\\\\" $text
または、
regexp {\\} $text
スクリプトの特殊文字を、円記号でエスケープすると、例2、3のように複数の円記号が必要になります。
このとき、円記号の記述を間違いやすいので、正規表現の記述は常に中括弧で囲むことを推奨します。
目次
索引
![]() ![]() |