如何检查字符串中的alphanumeric值 校验数据集逗号分隔值
管道分隔数据集的Alphanumeric值校验实现方案
第一步:原始数据规整
- 先把原始文本里被
##包裹的装饰性表头标记去掉,分离出真正的表头行和带数据的内容行 - 逐行按管道符
|切分列,把每一段列内容前后多余的空白字符清掉,保证列和表头一一对应
第二步:拆分单元格内的逗号值
- 每个单元格的内容再按英文逗号
,切分成独立的小片段 - 每个小片段同样清掉前后多余空白,适配两种常见的逗号书写习惯:
- 逗号后带空格:比如示例里Column1列的
150, oven, 450 - 逗号后无空格:比如示例里column 2列的
159,246,849
- 逗号后带空格:比如示例里Column1列的
注意:如果切分后不做trim操作,带前导空格的 oven会被误判为非Alphanumeric值,这是这类校验最常见的错误
第三步:核心校验规则
Alphanumeric值的判定标准:仅由大小写英文字母、阿拉伯数字构成,不包含空格、特殊符号、控制字符
- 空值校验:切分后清空前后空白如果是空串,直接标记为异常(空值不属于有效Alphanumeric范畴)
- 字符匹配校验:对非空的片段,用正则表达式
^[a-zA-Z0-9]+$做全量匹配,匹配通过即为合法Alphanumeric值,匹配失败则标记为非合规值
示例数据集校验结果对照
- Column1列拆分后的值:
150(合法)、oven(合法)、450(合法) - column 2列拆分后的值:
159(合法)、246(合法)、849(合法)
内容的提问来源于stack exchange,提问作者MatthiasF
相关产品推荐
相关产品推荐

