#!/usr/bin/env?lua?
s?=?{}
答?=?io.read()?- ?讀取壹個字符串,可以包含漢字。
萊恩。=?#(string.gsub(a,?"[\128-\191]",?"")) - ?計算字符數(不是字節數)
打印(鏡頭)
為了什麽?c?在?string.gmatch(a,?".[\128-\191]*")?做什麽?- ?叠代每個字符
如果?s[c]?==?零?然後呢?- ?並計算出現的次數。
s[c]?=?1
其他
s[c]?=?s[c]+1
結束
結束
為了什麽?k,v?在?對(s)?做-?打印結果
打印(k,?五)
End雖然題目沒有特別提到unicode友好性,但是考慮到現在多字節字符已經非常普遍,所以也加入了utf-8支持。
知識點請參考《LUA編程》第三版以下章節:
- 2.1零
- 4.3控制結構
- 7.2通用for的語義
- 21.1基本字符串函數
- 21.2模式匹配函數
- 21.7 Unicode
簡單I/O模型
測試輸出如下:
moose @ debian:~/Code/Baidu _ knowledge/Lua _ string $?。/lua_string.lua?
倪好,妳好
七
a1
h1
好的,1
i1
妳1
o1
n1
moose @ debian:~/Code/Baidu _ knowledge/Lua _ string $?。/lua_string.lua?
妳好,妳好。
四
好2
鎳2
moose @ debian:~/Code/Baidu _ knowledge/Lua _ string $?。/lua_string.lua?
lua語言編程:輸入壹個長度不超過50的字符串,求字符串中任意字符出現的次數。
43
a1
操作員3
1
中等1
,2
編號1
Seek 2
字符串2
l1
01
度數1
超級1
u1
滿分2分
號碼1
1
中學1
輸入1
程1
:1
1 of
意思是1
語言1
1
。1
輸入1
現在1
使用1
長度1
任1
51
單詞3
顏1
想要1
超過1