HTML テキストをサネタイズする関数を作成しようとしています。問題定義:
function f(txt) return txt:gsub("%s"," ")
これは次の場合に機能します。
f(" hello buddy!") ---> " hello buddy!"
ただし、HTML の仕様では、スペースが 2 つ以上ある場合のみ、余分なスペースを に置き換える必要があります
。したがって、単一のスペースを置き換える必要はありません。複数ある場合、1 つのスペースは変換されませんが、残りは に変換され
ます。言い換えれば、次の機能が必要です。
f(" hello buddy!") ---> " hello buddy!"
f(" ") ---> "  "
f(" ") ---> " "
f("hello buddy!") ---> "hello buddy!"
f() の書き方について何か考えはありますか?