当前位置: 首页 > 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://www.jsqmd.com/news/38120/

相关文章:

  • 博弈论 笔记
  • 2025年免清洗锡膏定制厂家口碑排行榜单
  • 《C++ Stack 与 Queue 完全使用指南:基础操作 + 经典场景 + 实战习题》 - 指南
  • 2025年无骨架类变压器工厂口碑推荐榜
  • 完整教程:【Kafka】架构原理、消息丢失、重复消费、顺序消费、事务消息
  • 2025年大型活动遮阳蓬生产商排行榜
  • Linux rsyslog 远程日志同步操作
  • 2025年11月EGUOO护肝片脂肪肝推荐:科学配方三维协同减少堆积修
  • 2025年复合钢格板销售厂家口碑推荐
  • 信创攻坚期,国产化DevOps平台如何为企业降本增效保驾护航?
  • 2025年研磨机定做厂家权威推荐榜单:管链机/小苏打研磨机/碳酸氢钠研磨机源头厂家精选
  • 2025年智能中高考加盟电话渠道口碑推荐榜
  • 基于值域预处理的快速 GCD
  • 2025年管链机生产厂家权威推荐榜单:研磨机/管链式输送机/管链输送机源头厂家精选
  • 2025年提分系统平台口碑排行
  • gif压缩实用方法分享,详细教程快收藏
  • 2025年靠谱的塑料仿真茅草渠道哪家强
  • 2025年想象力教育科技有限公司厂商口碑推荐榜单
  • 详细介绍:米家智能家居方案(租房版)
  • 2025年资深的四喜火锅底料大礼包哪家好
  • 2025年风力发电机厂家联系电话推荐:核心技术对比与市场格局剖析
  • 2025年4位半数显仪表制造商推荐排行榜单
  • 2025年铝包木门窗企业口碑排行榜单
  • react 生命周期函数有哪些?
  • 【2025-11-11】我们不亏
  • 2025年权威的人造茅草渠道推荐排行榜
  • 2025年小型风力发电机厂家联系电话推荐榜单:品质见证,实力领航
  • 2025年11月EGUOO关节营养素推荐:FDA认证生产链守护长期关节健康
  • 2025年做工精细的前置过滤器排行
  • 2025年防水母线槽生产厂家权威推荐榜单:防火母线槽/空气型母线槽/高压母线槽源头厂家精选