1

いくつかの単語をいくつかの文字または数字に置き換えるために使用される関数があります。私はstring.gsub()このように関数を使用しています:

string.gsub(line, "[0-9%a%s/,-]+", "\t")

,これは、数字、文字、スペース、、、およびの文字列で非常にうまく機能します/。とのような角かっこも交換したいと思い(ます)。しかし、単に私のパターンに挿入()するだけでは機能しません。私も試してみましたが、うまく%(いき%)ませんでした。string.gsub()パターンインメソッドを使用してLuaのブラケットを置き換えるにはどうすればよいですか?

4

1 に答える 1

5

内部でエスケープする必要があるの[][]%-、だけです。これらはすべて。でエスケープされ%ます。そのため、次のようにエスケープする-と機能します。

string.gsub(line, "[0-9%a%s/,%-()]+", "\t")

と同等である、と[0-9%a]同等であるということもおそらく言及する価値があります。[%d%a]%w

于 2012-07-31T11:29:18.773 に答える