C# 检查字段名、方法名命名规范:长度限制、字符验证、重复性检测
以下是一个示例实现,使用了简单的字符串比较和遍历,无需使用正则表达式:
public static bool CheckFuc(NtionType tionlype, string name, ref string Msg)
{
// 检查长度是否超过20个字符
if (name.Length > 20)
{
Msg = '名称长度不能超过20个字符';
return false;
}
// 遍历每个字符检查是否符合命名规范
foreach (char c in name)
{
if (!Char.IsLetterOrDigit(c) && c != '_')
{
Msg = '名称只能包含字母、数字、下划线';
return false;
}
}
// 检查名称是否与 NtionType 类型中的字段或方法名一致
if (tionlype.GetType().GetFields().Any(f => f.Name == name) ||
tionlype.GetType().GetMethods().Any(m => m.Name == name))
{
// 名称已经存在
Msg = '名称已经存在';
return false;
}
// 名称符合规范
return true;
}
这个函数首先检查名称的长度是否超过20个字符,如果是则返回 false。然后遍历每个字符,检查是否包含非字母、数字和下划线的字符,如果是则返回 false。接下来,使用反射 API 检查名称是否与 NtionType 类型中已有的字段和方法名重复,如果是则返回 false。最后,如果名称符合所有规范,则返回 true。
原文地址: https://www.cveoy.top/t/topic/lq5w 著作权归作者所有。请勿转载和采集!