ワイルドカード(*と?)の処理を行うプログラムを作っているのですが、何か便利な関数はあるのでしょうか? strstr関数あたりを駆使するしかないのでしょうか?

(ファイル名のような文字列の一覧表を持っていて、その中から上位から送られてきたワイルドカードを含む文字列に合致する文字列を探し出すルーチンを作っています。蛇足かと思いますが、*は0文字以上の任意の文字、?は1文字の任意の文字です。)

宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ファイル名正規表現は特例的に簡単に作れます。


この程度なら作っちゃってもいいかも。

共立出版「ソフトウェア作法」(ISBN4-320-02142-8 C3041)に正規表現処理のアルゴリズム解説があります。

アルゴリズム集というより詳細設計の本です。

参考URL:http://kyoritsu-pub.topica.ne.jp/bookhtml/0306/0 …
    • good
    • 0

regcomp,regexecという正規表現を使うための関数がありますが、お使いの処理系にあるかどうかはわかりません(^^;



unixには昔からあるやつで、POSIXにも含まれていますが。

まあ、gnuのライブラリにはあるので,ソースが入手可能ですけど。

参考URL:http://www.linux.or.jp/JM/html/LDP_man-pages/man …
    • good
    • 0

このQ&Aに関連する人気のQ&A

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


人気Q&Aランキング