結果の入るMutableArray。Arrayは開始点と終了点を保持するデータ型が列をなす。検索処理クラスからインスタンスを初めて作ったとき、ライブラリをロードして、ライブラリのインターフェイスのハンドルをもらっておく。その検索処理クラスのインスタンスを使えば文字列が検索できる。インスタンスの最後の一つを解放したとき、ライブラリが解放される。感じでよいんじゃないでしょうか。実はdlopenやdlcloseは自前でカウンタを持っていて、オープンするごとに+1、クローズするごとに-1、しているらしい。無理に自前で参照カウンタを持つ必要はないとおもう。アプリ開始時に初期化、終了時に解放。いいし、こっちの方が効率がいいと思う。例のごとく、解凍されたディレクトリに、libonig.2.dyliblibonig.aoniguruma.hを仕込んでみてください。鬼車的にはendはマッチした文字列の終端の次のindexをさすみたい。正規表現によっては今の作りじゃそれができない。このへんはよくわかんないんだけど。一つしか引っかからない。whileかなんかで回しゃいいんしょ。ほかにもちょっと改造が必要。あと、シンタックスはrubyじゃなくてperlで。んじゃあ、そんな感じに直しますか。