7

私は lua を初めて使ったばかりなので、基本的なことが抜けていたら申し訳ありません。
文字列で特定の値を見つけることができるかどうかを確認する簡単なテストを実行しています。

コードは次のとおりです。

print(string.find('fd@testca','.') )

私が期待していた失敗の代わりに、私は戻ってきています:

mymachinename:/usr/share/std/test# lua test.lua
1       1

どこが間違っているのか教えてもらえますか? ありがとう。

4

2 に答える 2

6

これは、Lua ではfindメソッドがパターンを探し、.任意の文字を表すためです。

この問題を回避するには、文字セットを使用できます。

print(string.find('fd@testca','[.]') )

これは小さなデモへのリンクです。

于 2013-03-07T16:07:00.853 に答える
3

Lua はパターン (ここで説明) を使用して検索します。オプションの 4 番目のパラメーターを使用して、パターンをオフにすることができます。

print(string.find('fd@testca','.', 1, true) )

オプションの 3 番目のパラメーター (1) は開始位置です。

于 2013-03-07T16:14:26.360 に答える