Skip to content

API len zh tw

Codex edited this page Oct 3, 2026 · 1 revision

len

API · BASIC

Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

ASC · Chr · len · StrComp

ClassicUO • Runtime API

檢查文字長度或數字文字表示的長度。

完整語法

len(value:Decimal) -> Integer
len(value:Integer) -> Integer
len(value:String) -> Integer

參數

  • value — String、Integer 或 Decimal。數字先以不受語言影響的格式轉為文字;負號和小數點也計算。

傳回值

Integer,UTF-16 碼元數;空文字為 0。emoji 可能佔 2,組合標記分開計算。數字計算文字長度而非記憶體大小;Array 請用 GetArrayLength。

行為

  • 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。
  • 不計算位元組、像素或可見字形;截斷可能拆開代理對,因此縮短標籤範例使用 ASCII。

內部函式:從呼叫到結果

String 讀取 Length;數字先以固定文化設定格式化。原始值不變。

1. InternalSubrutines.Len

String 讀取 Length;數字先以固定文化設定格式化。原始值不變。

Integer,UTF-16 碼元數;空文字為 0。emoji 可能佔 2,組合標記分開計算。數字計算文字長度而非記憶體大小;Array 請用 GetArrayLength。

專案原始碼: external/InjectionScript/src/InjectionScript/Runtime/InternalSubrutines.cs; 函式 InternalSubrutines.Len.

不計算位元組、像素或可見字形;截斷可能拆開代理對,因此縮短標籤範例使用 ASCII。

範例

縮短標籤

# 縮短標籤
#
# 檢查文字長度或數字文字表示的長度。
#
# Integer,UTF-16 碼元數;空文字為 0。emoji 可能佔 2,組合標記分開計算。數字計算文字長度而非記憶體大小;Array 請用 GetArrayLength。

SUB Main()
    # 五個 ASCII 字母加三個點得到 LongC...,長度 8。
    # 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

    Dim label = "LongCharacterName"
    If Len(label) > 8 Then
        Return Left(label, 5) & "..."
    End If
    Return label
END SUB

參數與執行說明:

  • 五個 ASCII 字母加三個點得到 LongC...,長度 8。
  • 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

拒絕空設定

# 拒絕空設定
#
# 檢查文字長度或數字文字表示的長度。
#
# Integer,UTF-16 碼元數;空文字為 0。emoji 可能佔 2,組合標記分開計算。數字計算文字長度而非記憶體大小;Array 請用 GetArrayLength。

SUB Main()
    # Trim 去除空白後 Len 為 0,Main 傳回 missing。
    # 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

    Dim setting = Trim("   ")
    If Len(setting) = 0 Then
        Return "missing"
    End If
    Return setting
END SUB

參數與執行說明:

  • Trim 去除空白後 Len 為 0,Main 傳回 missing。
  • 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

區分字元和數字長度

# 區分字元和數字長度
#
# 檢查文字長度或數字文字表示的長度。
#
# Integer,UTF-16 碼元數;空文字為 0。emoji 可能佔 2,組合標記分開計算。數字計算文字長度而非記憶體大小;Array 請用 GetArrayLength。

SUB Main()
    # emoji 長度 2,-125 含負號長度 4;結果為 2|4。
    # 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

    Dim symbol = Chr(0x1F600)
    Dim quantity = -125
    Return CStr(Len(symbol)) & "|" & CStr(Len(quantity))
END SUB

參數與執行說明:

  • emoji 長度 2,-125 含負號長度 4;結果為 2|4。
  • 僅在本機處理範例資料並傳回值;不傳送聊天、不停止腳本、不移動物品,也不連線至伺服器。

Clone this wiki locally