C# 字段名验证:限制长度、首字母和字符集
可以使用以下代码实现对字段名的验证:
public static bool ValidateFieldName(string fieldName)
{
const int MaxByteLength = 20;
const string ValidCharacters = '_0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
int byteLength = Encoding.Default.GetByteCount(fieldName);
if (byteLength > MaxByteLength) return false;
if (!ValidCharacters.Contains(fieldName[0])) return false;
foreach (char c in fieldName)
{
if (!ValidCharacters.Contains(c)) return false;
}
return true;
}
该方法接受一个字符串参数,即待验证的字段名。首先定义了最大字节长度为20的常量和合法字符集合的常量。接着使用 Encoding.Default.GetByteCount 方法计算字段名的字节长度,并与最大长度进行比较。如果超过了最大长度,返回 false。然后判断字段名的首字母是否为合法字符,如果不是,也返回 false。最后遍历字段名中的每个字符,判断是否为合法字符,如果存在非法字符,返回 false。如果通过了所有的验证,返回 true。
原文地址: https://www.cveoy.top/t/topic/luNQ 著作权归作者所有。请勿转载和采集!