これは構文チェッカー用です。(ええ、正規表現を使用するのは理想的ではないことはわかっています) リーダーは、それがint
| float
| | char
| | bool
一部であり、宣言と初期化が構文的に有効かどうかを確認する必要があります。ff は、私の条件が通過する必要がある str のサンプルです。
a;
a, _b2;
a, _b2=0;
a=1, _b2=0;
a=1+1, _b2=a+1, c, d=555, e;
a=2.33;
a='a', b=3;
a="asb", b='3';
a=true, b=false, c="false";
渡してはならない:
a= , b2 = 1;
a = ;
a = '23;
a = 50, b = a+1
a = a.23;
私が作った状態は、見たときに一致し=
ません。状態を修正するのを手伝ってくれませんか
^(\s*[A-z_][A-z0-9]*\s*(=\s*0-9|=\s*"[^]*"|=\s*'[^]*')?\s*,)*\s*[A-z_][A-z0-9]*\s*(=\s*0-9|=\s*"[^]*"|=\s*'[^]*')?\s*;
UPDATE : 浮動値と見なされます
UPDATE : int、float、char、および boolean 値に適用できる一般的な正規表現にしました