Lua関連文字列の切り取りとマッチング
1901 ワード
1.文字の「()」の内容を切り取る.
コードには行1のようにstringが直接使用する.findはエラーを報告します.
lx13.lua:2: unfinished capture
stack traceback: [C]: in function 'find'
「(」を魔法文字として使用するには、%記号を使用してエスケープする必要があります.
2.stringを使用する.matchと正則は文字列の両端のスペースを除去することを実現する.
3.stringを使用する.matchと正則はアルファベット、数字、漢字外の文字を判断することを実現する.
1 local num1 = string.find(str1,"(");
2 local num2 = string.find(str1,")");
3
4 local str2 = string.sub(str1,0,num1);
5 local str3 = string.sub(str1,num1+1,num2);
コードには行1のようにstringが直接使用する.findはエラーを報告します.
lx13.lua:2: unfinished capture
stack traceback: [C]: in function 'find'
「(」を魔法文字として使用するには、%記号を使用してエスケープする必要があります.
2.stringを使用する.matchと正則は文字列の両端のスペースを除去することを実現する.
Str = string.match(Str,"%s*(.-)%s*$");
3.stringを使用する.matchと正則はアルファベット、数字、漢字外の文字を判断することを実現する.
Str2 = string.match(Str2,"^[A-Z-a-z-0-9-\128-\254]+$");
--return nil or Str2