lua中如何判斷字串中包含中文字元

2021-03-19 18:20:10 字數 2710 閱讀 5770

1樓:home不知道

遍歷陣列

對每個位元組使用string.byte()

發現有大於127的,就是漢字

lua怎麼判斷字串中含有漢字

2樓:永恆

a='hgsadg我們hdsfk'

l=strlen(a)

for i=1,l do

asc2=strbyte(strsub(a,i,i))if asc2>127 then

print('可能是漢字')

else

print(strchar(asc2))

endend

lua 寫一個函式,傳入一個字串,怎麼判斷字串中是否有中文?

3樓:

lua是小型嵌入式語言,語言本身並不提供這種功能,你需要使用第三方正則庫。初學者誰給你這樣的作業呢?

這個問題挺麻煩的,首先得確定資料的字符集,不同字符集漢字的編碼範圍不同。弄懂這個問題你需要了解以下技術:

1.字符集:要了解以下幾種編碼:unicode utf8 cp936 gbk

2.正規表示式:如何匹配漢字,unicode 漢字編碼範圍。

你現在使用的是那款lua的程式設計工具?

1、lua語言 怎麼檢測 當前字元 是否 存在指定文字中 10

4樓:永恆

用find函式。

string.find()函式用於在一個給定的目標字串中搜尋一個模式。

最簡單的模式就是一個單詞,它只會匹配與自己完全相同的拷貝。

當find找到一個模式後,它會返回兩個值:匹配到的起始索引和結尾索引;

如果沒有找到任何匹配,它就返回nil。

示例**:

local str = "hello world"

local i, j = string.find(str, "hello")

-- 返回hello在str中的起始位置和終止位置print(i, j)

string.find函式還具有一個可選的第三個引數,它是一個索引,告訴函式應該從目標字串的哪個位置開始搜尋。

lua中文字串的捕獲。

5樓:錯落二人組

|【local s = "學號|【20140036】教室抄:

bai425,請按照du教室學號對號zhi入座"

_, _, id =s:find("【(%d+)】")

_, _, clsrm = s:find("教室:(%d+)")

print("學號:dao"..id.."\n".."教室:"..clsrm)

輸出:學號:20140036

教室:425

基本就是用patterns進行匹配,()內部分通過find的額外返回值輸出

注意上述只是簡單演示,即學號教室都是數字的情況……如果有字母的話,教室可能需要通過逗號的位置或者具體字元數量等進行定位

另外lua不存在是否支援中文的問題,請先確認你的執行環境能正確顯示中文(比如在cmd下執行時確保cmd的codepage和lua檔案的編碼保持一致

lua 判斷string是否含有數字

6樓:雪v歌

-- 如果待判斷的是一個變數

local t = type(x);

if t == "number" then-- 是數字

else if t == "string" then-- 是字串

end-- 如果帶判斷是一個字串,要判斷是否可以轉成數字, 則local n = tonumber(x);

if n then

-- n就是得到數字

else

-- 轉數字失敗,不是數字, 這時n == nilend

如何判斷字串中,包含子字串

7樓:兄弟連教育北京總校

string strdec = "天網";

string strfirewall = "防火牆";

//返回-1,表是不包含子字串

if((strsrc.find(strdec) != -1) && (strsrc.find(strfirewall) != -1))else}

lua指令碼中怎麼對比字串?

8樓:蘭婷集需

lua 字元

串的比較 是檢測字串的hash是否一樣來判斷兩個字串是否相等測試**如下:

local a = "dfadfafdasf"

local b = "dfadfafdasf"

print(a==b)

lua指令碼還可以對utf8字串過濾中文字元,實現**如下:

local _, count = string.gsub(str, "[^\128-\193]", "")

for uchar in string.gfind(str, "[%z\1-\127\194-\244][\128-\191]*") do

tab[#tab+1] = uchar

end,

9樓:屈儂御冷

不需要直接用全等對比就好了

123local a = "abc"local b = "def"print(a == b)

asp程式裡如何判斷字串中存在包含了另一

1.判斷是否包含某某字元函式是 instr 和instrrev 2.具體使用如下 你可以用instr 或者instrrev 來判斷if instr ab,a 0 then或if instrrev ab,a 0 then有else 無3.具體 如下 dim ly request ly if instr...

matlab中如何使得字串變數當中包含單引號

需要將該單引號寫成兩個單引號形式,例如 v i can t find the manual v i can t find the manual char x string abc 注意字串是雙引號括起來不是單引號。是特殊字元要輸出它只需加 即可轉義成變通字元。若一個字串本身含有單引號這個字元,需要將...

C中判斷字串是不是漢字,c 怎麼判斷字串中包含漢字

1 用ascii碼判斷 在 ascii碼錶中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 是不是漢字,abc,柯樂義 for int i 0 i text.length i else 2 用漢字的 unicode 編碼範圍判斷 漢字的 unicode 編碼範圍是...