Luaの文字列操作 ②ある文字列から特定文字列を探す。
次のありがちな課題として、ある文字列中に特定の文字列があるかを確認してみます。たとえば、文字列「mmmmmmmmnnnmmmmmmnnmmmmmmnnnmmnmmnmmnmmmmnnnnmm」の中に「nnnn」は存在するでしょうか?
こんなときにはstring.find()に4つの引数を与えて利用します。4つの引数を与える場合の、string.findはstring.find( 探す元の文字列, 探し出す文字列 , 探すのを開始する場所 , plainフラグ )です。plainにtrue指定をします。
> s="mmmmmmmmnnnmmmmmmnnmmmmmmnnnmmnmmnmmnmmmmnnnnmm" > pos=string.find( s , "nnnn" , 1 , true ) > print( pos ) 42
文字列の中に「nnnn」ありました。
42番目からnnnnが始まるようですね。
リファレンスマニュアルで確認しておきましょう。
http://sugarpot.sakura.ne.jp/yuno/html/lua51_manual_ja.html