次のような入力が与えられた場合、変数が定数であることを確認する正規表現を記述する必要があります。
const size N = 1;
const size MAX = 1;
int const stant = 1147;
int x = 4;
これが私が作成した私の表現です:
const\s.*(\]|\s|\*)VARIABLETOCHECK(\(|\[|=|\s|;)
式の説明:
\s
- "const" の後のスペース。.*
- 任意のシンボルの任意の数。(\]|\s|\*)
- 変数の前に置くべき記号。VARIABLETOCHECK
チェックしたい変数名を設定する場所です。(\(|\[|=|\s|;)
- 変数の後に続く記号
問題:
問題は、単語の後にスペースしかない場合const
、表現が機能しないことです。
また、各変数 ( N
、MAX
、stant
) は個別に一致する必要があります。
const\s.*(\]|\s|\*)N(\(|\[|=|\s|;)
これにより、文字列のみが選択されます。const size N = 1;