to_lower
2026/4/14大约 4 分钟
最后同步日期:2026-04-15 | Godot 官方原文 — to_lower
to_lower
定义
to_lower 用来把字符串中的所有大写字母转换成小写字母。你可以把它想象成"让所有字母都蹲下"——大写的 A 变成小写的 a,Z 变成 z。非字母字符(数字、中文、标点)不受影响。
这个方法在大小写不敏感的字符串比较中特别常用。
函数签名
C#
// Godot.StringExtensions 方法
public static string ToLower(this string instance)GDScript
func to_lower() -> String参数说明
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| 无 | — | — | 这是一个无参数方法,直接对字符串本身操作 |
返回值
类型: string / String
返回所有字母都转为小写的新字符串。原字符串不会被修改。
代码示例
基础用法
C#
using Godot;
public partial class ToLowerExample : Node
{
public override void _Ready()
{
string text = "Hello, GODOT 4.6!";
GD.Print(text.ToLower());
// 运行结果: hello, godot 4.6!
// 已经是小写的字符串不受影响
GD.Print("already lower".ToLower());
// 运行结果: already lower
// 数字和标点不受影响
GD.Print("ABC123!@#".ToLower());
// 运行结果: abc123!@#
}
}GDScript
extends Node
func _ready():
var text := "Hello, GODOT 4.6!"
print(text.to_lower())
# 运行结果: hello, godot 4.6!
# 已经是小写的字符串不受影响
print("already lower".to_lower())
# 运行结果: already lower
# 数字和标点不受影响
print("ABC123!@#".to_lower())
# 运行结果: abc123!@#实际场景:大小写不敏感的命令匹配
C#
using Godot;
public partial class CommandHandler : Node
{
public override void _Ready()
{
// 玩家可能输入各种大小写组合的指令
string[] inputs = { "HELP", "help", "Help", "hElP" };
foreach (string input in inputs)
{
// 统一转为小写后比较
if (input.ToLower() == "help")
{
GD.Print($"收到指令 [{input}],显示帮助信息");
}
}
// 运行结果:
// 收到指令 [HELP],显示帮助信息
// 收到指令 [help],显示帮助信息
// 收到指令 [Help],显示帮助信息
// 收到指令 [hElP],显示帮助信息
}
}GDScript
extends Node
func _ready():
# 玩家可能输入各种大小写组合的指令
var inputs := ["HELP", "help", "Help", "hElP"]
for input in inputs:
# 统一转为小写后比较
if input.to_lower() == "help":
print("收到指令 [" + input + "],显示帮助信息")
# 运行结果:
# 收到指令 [HELP],显示帮助信息
# 收到指令 [help],显示帮助信息
# 收到指令 [Help],显示帮助信息
# 收到指令 [hElP],显示帮助信息进阶用法:搜索关键字与数据标准化
C#
using Godot;
public partial class ToLowerAdvanced : Node
{
public override void _Ready()
{
// 在不区分大小写的情况下搜索关键字
string content = "The Quick Brown Fox Jumps Over The Lazy Dog";
string keyword = "FOX";
bool contains = content.ToLower().Contains(keyword.ToLower());
GD.Print($"包含关键字 '{keyword}': {contains}");
// 运行结果: 包含关键字 'FOX': True
// 标准化用户名(统一小写存储)
string username1 = "PlayerOne";
string username2 = "playerone";
bool sameUser = username1.ToLower() == username2.ToLower();
GD.Print($"是否同一用户: {sameUser}");
// 运行结果: 是否同一用户: True
// 与 to_upper 的对比
string text = "MiXeD CaSe";
GD.Print($"全小写: {text.ToLower()}");
GD.Print($"全大写: {text.ToUpper()}");
// 运行结果:
// 全小写: mixed case
// 全大写: MIXED CASE
}
}GDScript
extends Node
func _ready():
# 在不区分大小写的情况下搜索关键字
var content := "The Quick Brown Fox Jumps Over The Lazy Dog"
var keyword := "FOX"
var contains := content.to_lower().contains(keyword.to_lower())
print("包含关键字 '" + keyword + "': " + str(contains))
# 运行结果: 包含关键字 'FOX': true
# 标准化用户名(统一小写存储)
var username1 := "PlayerOne"
var username2 := "playerone"
var same_user := username1.to_lower() == username2.to_lower()
print("是否同一用户: " + str(same_user))
# 运行结果: 是否同一用户: true
# 与 to_upper 的对比
var text := "MiXeD CaSe"
print("全小写: " + text.to_lower())
print("全大写: " + text.to_upper())
# 运行结果:
# 全小写: mixed case
# 全大写: MIXED CASE注意事项
- 只影响字母:数字、标点符号、中文字符等不受影响,保持原样。
- 不修改原字符串:返回一个新字符串,原字符串保持不变。
- C# 内置方法同名:C# 自带的
string.ToLower()和 Godot 的ToLower()扩展方法功能一致。在 C# 中调用时,两者等效。 - 与
to_upper互补:to_lower转小写,to_upper转大写。两者配合可以实现大小写标准化。 - 不适用
StringName:Godot 的StringName类型没有ToLower方法。如果需要转小写,先转为string再调用。
