如何在 Hadoop 中编写 HQL 表达式以验证特定格式的字母数字字段的格式,例如 X9999
Posted
技术标签:
【中文标题】如何在 Hadoop 中编写 HQL 表达式以验证特定格式的字母数字字段的格式,例如 X9999【英文标题】:How to write HQL expression in Hadoop to verify format of alphanumeric field in specific format such as X9999 【发布时间】:2019-07-23 21:02:18 【问题描述】:如何编写 HQL 来确定字段的结果是否第一个字符为 alpha 并且以下四个是数字。 (即 - 该字段的格式是“F5555”,因此我需要验证从该字段的查询返回的所有结果都遵循正确的格式。
【问题讨论】:
【参考方案1】:你可以试试这个:
select REGEXP_EXTRACT( 'd55555' , '^[A-Za-z ]?[0-9]5$', 0);
现在,为了理解,请阅读this并看下一个cmets:
^ 表示字符串的开头(在这种模式下我们标记开头); [A-Za-z] - 表示任何字母:大写或小写; ? - 表示我们只希望前一个字符类出现 1 次; [0-9] - 0 到 9 之间的任意数字; 5 - 表示前一个字符类 ([0-9]) 必须准确出现 5 次(不多不少); $ - 字符串结尾;希望你能理解。
【讨论】:
这个解决方案效果很好。非常感谢您的帮助!以上是关于如何在 Hadoop 中编写 HQL 表达式以验证特定格式的字母数字字段的格式,例如 X9999的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Angular 2 上实现 ngOnChanges 以进行输入验证,而不触发“检查后表达式已更改。”错误