私はPOSIX C正規表現を使用しています。メッセージの複数のフィールドに一致する正規表現が必要です。また、フォーマットに一致しないメッセージはすべて拒否する必要があります。メッセージ形式は次のとおりです。
String1|Integer1|String2|String3|Integer2|...IntegerN`
「|」文字がフィールド間の区切り文字として使用されます。最後の整数は、0 個以上の項目を持つリストです。どのフィールドも空白にすることができます (区切り文字の間にスペースや隠し文字はありません)。
基本的には、フィールドを個別に引き出せるようにしたいだけです。
これまでのところ、私は持っています:
.*|[0-9]3|.*|.*|([0-9]3|)50[\`]
わかりやすくするために、エスケープ文字を使用せずにこれを書きました。また、各フィールドに含めることができるアイテムの数も追加しました。そして、メッセージの末尾の文字を忘れていました。