アプリ版:「スタンプのみでお礼する」機能のリリースについて

バイナリー配列 unsigned char buffer[BufferSize]のようなもにに対して正規表現による検索を行うにはどのようにすればよいでしょうか。正規表現には、非印刷文字も含まれます(例: \x01{5}.{10}\xFF)。宜しくお願いします。

A 回答 (2件)

16進文字列に変換しちゃうのもテかもですね。

この回答への補足

質問者(softwarelearner)です。
ただ、この方法だとAsicii文字が使えませんよね。
例えば、もとの正規表現が

\x00(hello){3,5}\xFF

なら

00(68656c6c6F){3,5}FF

ですかね。ちょっと煩雑なので、なんとか元の表現が使える方法はないものでしょうか。

補足日時:2013/08/01 14:52
    • good
    • 0
この回答へのお礼

なるほど。
シンプルで良い方法だと思います。
有難うございました。

お礼日時:2013/08/01 09:15

まず、正規表現ライブラリを用意するか、自作してください。


C標準の正規表現ライブラリというのはありません。

既存のライブラリを用意したのなら、そのマニュアルを熟読してください。
特に、マルチバイトの扱いと、入力文字列について。
マルチバイトに未対応だったり、設定変更できるものだと、複数バイトで1文字、とはならないので、おそらく、ご期待の方法が使えます。
入力がCの文字列に限定されていると、'\0'を含む入力からの検索ができません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
私の用途では、文字コードはあまり関係がありませんが、参考とさせて頂きます。

お礼日時:2013/08/01 09:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!