当前位置: 首页 > news >正文

sqlserver 允许字母、数字、汉字 额外允许字符

现在这个函数可以准确判断字符串是否只包含:

  • 字母(A-Z, a-z)

  • 数字(0-9)

  • 汉字(包括基本汉字和扩展区)

  • 斜杠字符(/

 

CREATE FUNCTION dbo.CheckValidCharactersEx(
@inputString NVARCHAR(MAX),
@extraChars NVARCHAR(50) = NULL -- 额外允许的字符,例如:N'/-_'
)
RETURNS BIT
AS
BEGIN
IF @inputString IS NULL OR LEN(@inputString) = 0
RETURN 1

DECLARE @i INT = 1
DECLARE @len INT = LEN(@inputString)

WHILE @i <= @len
BEGIN
DECLARE @char NCHAR(1) = SUBSTRING(@inputString, @i, 1)
DECLARE @code INT = UNICODE(@char)

-- 快速路径:字母数字
IF (@code BETWEEN 48 AND 57) OR -- 0-9
(@code BETWEEN 65 AND 90) OR -- A-Z
(@code BETWEEN 97 AND 122) -- a-z
BEGIN
SET @i = @i + 1
CONTINUE
END

-- 检查额外允许的字符
IF @extraChars IS NOT NULL AND CHARINDEX(@char, @extraChars) > 0
BEGIN
SET @i = @i + 1
CONTINUE
END

-- 汉字检查(覆盖大部分情况)
IF (@code BETWEEN 19968 AND 40959) OR -- 基本汉字
(@code BETWEEN 13312 AND 19903) OR -- 扩展A
(@code BETWEEN 131072 AND 173791) -- 扩展B
BEGIN
SET @i = @i + 1
CONTINUE
END

-- 如果到达这里,说明有非法字符
RETURN 0
END

RETURN 1
END

http://icebutterfly214.com/news/33405/

相关文章:

  • 2025年无骨架类变压器工厂口碑推荐榜
  • 2025年资深的四喜火锅底料大礼包哪家好
  • revit api 自定义失败处理器
  • 2025学校高空防坠网销售厂家口碑推荐榜
  • 完整教程:AbMole小课堂丨重组R-spondin-3(RSPO3)的作用机理及其在类器官和干细胞研究中的应用
  • 2025年质量好的切钛合金圆锯机厂家最新推荐排行榜
  • 2025尼龙地毯生产厂家推荐排行榜单
  • 深入解析:iBizOdoo:基于模型驱动的商业套件总线简介
  • Python3 正则表达式
  • transformers库本地部署大语言模型 - yi
  • CF2138
  • 2025年最新形象思维少儿训练机构推荐排行
  • 2025年质量好的储能集装箱机柜空调厂家推荐及采购参考
  • 服务注册、服务发现、OpenFeign及其OKHttp连接池建立
  • 2025年6月EGUOO复合植物舒压睡眠片推荐:便携规格随行调理作息节律
  • 习题解析之:出租车计费
  • 致敬杰克逊的音乐
  • 基于GA遗传优化的电动汽车光储充电站容量配置
  • ADV 记录
  • some Gaokao losers
  • 快捷键、图层面板、时间轴、图表编辑器
  • my GAOKAO grade
  • 2025.11.12
  • flask: flask-httpauth做登录验证
  • 每日一导1
  • HBuilderX快速安装与使用指南 - 从下载到项目创建全流程
  • 深入理解OpenWrt生态:LuCI、UCI、ubus与rpcd的协同工作机制 - 实践
  • 251111重点
  • 11.11每日总结
  • 拥护向量机(SVM)(二)---优化算法