1

ファイル パスを表す文字列を取得し、ファイル名を削除して、パスだけを保存したいと思います。

たとえば、私が持っている場合:

"/folder1/folder2/file.name"

私は私の文字列で終わりたいと"/folder1/folder2/"思います。

ここに記載されているように、私は遊んでいstring.match()ます: http://lua-users.org/wiki/StringLibraryTutorial

次のコードがあります。

mystring = "/var/log/test.log"
print(string.match(mystring, "%/"))

このスクリプトを実行すると、'/' だけが返されます。文字列内の 2 つの「/」の位置が返されることを期待していました。"%/"パターンを justに置き換えてみました"/"が、同じ結果が得られます。

非常に単純なものが欠けていると確信していますが、それが何であるかわかりません。

4

2 に答える 2

3

パターン%/またはによって、文字列を探すように/指示しており、それが得られたものです。これを試してください:string.match/

local mystring = "/var/log/test.log"
print(string.match(mystring, ".+/"))

ここでのパターンは、1 つまたは複数の文字 ( ) の後に a が続く.+/ものを探すことを意味します。貪欲であることを意味します。つまり、可能な限り一致します。./+

于 2014-01-29T14:21:39.197 に答える