私はLuaを学んでおり、Pythonに関するいくつかの知識を持っており、Pythonのような文字列を置き換えたいが、見つけられない正確な翻訳機能PythonをLuaに変換する:リスト内の文字列を置換する
私はLuaの中でこれを作りたい:
l = ["#01","#02", "#03"]
print(l)
for i in range(len(l)):
l[i]=l[i].replace("#","")
#print (i)
print (l)
私はLuaを学んでおり、Pythonに関するいくつかの知識を持っており、Pythonのような文字列を置き換えたいが、見つけられない正確な翻訳機能PythonをLuaに変換する:リスト内の文字列を置換する
私はLuaの中でこれを作りたい:
l = ["#01","#02", "#03"]
print(l)
for i in range(len(l)):
l[i]=l[i].replace("#","")
#print (i)
print (l)
まずPythonでリストの内包表記を使用します:あなたは本当に場所にリストを更新する必要がある場合は
>>> l = ["#01", "#02", "#03", "04"]
>>> l = [s.replace('#', '') for s in l]
>>> print(l)
['01', '02', '03', '04']
を:
>>> l[:] = [s.replace('#', '') for s in l]
ルアでは、for
を使用してリスト/配列/テーブルを反復処理し、を使用できます部分文字列を置き換えるために:string.gsub()
のが、魔法の文字なし
> l = {"#01", "#02", "#03", "04"}
> for k, v in pairs(l) do print(k, v) end
1 #01
2 #02
3 #03
4 04
> for k in next,l do l[k] = l[k]:gsub("#", "") end
> for k, v in pairs(l) do print(k, v) end
1 01
2 02
3 03
4 04
アナログ(無地交換)
function string:replace(pattern, replace_string, ...)
return (self:gsub(
pattern:gsub("%p","%%%0"),
replace_string:gsub("%%","%%%%"),
...
))
end
例:
print(string.replace("25%", "%", " percent")) --> 25 percent
print(("n>=0"):replace(">=", "≥")) --> n≥0
s = "#01"; print(s:replace("#", "")) --> 01
'nil'がnext' – tonypdmtr
'後に冗長です@ tonypdmtr:それを指摘してくれてありがとう。 – mhawke