次のいずれかのように見えるgcodeの行からデータを抽出しようとしています:
G01 X10. Y20. Z3.0 F15.
G00X.500Y-10.
G01 Y10.X20.150
これで、これをグループと完全に一致させる正規表現をすでに作成しました。
(G|M|X|Y|Z|I|J|K|F)(?<val>-?\d*\.?\d+\.?)
そして、それはうまく機能しているようです。結果ごとに 3 つのグループのデータを取得します。例:
G01 X10. Y20. Z3.0 F15.
G01 | G | 01
X10. | X | 10.
Y20. | Y | 20.
Z3.0 | Z | 3.0
F15. | F | 15.
私がやりたいのは、入力文字列に含まれる値を確認して、データを抽出して位置コマンドを作成できるようにすることです。上記の例を見てみましょう。X、Y、Z の値だけを抽出して、それらのベクトルを作成できるようにします。これは、3 つの値がすべてある場合は簡単ですが、入力文字列がG01 X10. Y5.0
.