2020-08-19 08:23发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我有一个要求,如果它存在于来自HANA计算视图中计算列中某个列的字符串中,我需要在其中找到任何特殊字符。 你能让我知道代码吗?
谢谢
这里最简单的方法是使用正则表达式和预定义的字符类。
例如,这里可以使用\ w单词字符类。
通过指定 非单词字符类(通过^ \ w或\ W,请在此处),您可以轻松地编写查询以"标记"这些记录。 像这样的东西:
,dat为 (从虚拟联合所有中选择'AB1C1'作为vendor_name 从虚拟联合所有中选择" XY @ z"作为vendor_name 从dummy中选择" XY_-12345z"作为vendor_name) 选择 供应商名称 ,locate_regexpr ('[^ \ w]'IN" VENDOR_NAME"中)作为special_character_mark 从 t
" SPECIAL_CHARACTER_MARK"将是一个整数,如果在vendor_name中未找到非单词字符,则为零(0),如果存在则大于零。
现在,LOCATE_REGEXPR函数仅在SQL中可用,因此您必须在计算视图之外的SQL命令中或在语言为" SQL"的计算列中使用它。
但是,棘手的一点不是将其纳入您的代码/模型中。 通常比较棘手的是找到正确的正则表达式来标记所需的字符。例如,上述测试数据中的连字符(-)被视为非单词字符,而下划线(_)是
在这里,您必须非常小心,以为您的用例创建正确的正则表达式。
像往常一样,搜索机器是您的朋友... p>
---就像其他信息一样:我多年来一直在处理这种要求。 每当它弹出时,我都需要再次搜索regex语法,规则和详细信息。 这不是任何人都应该记住的事情,而且我不知道有谁这样做。 了解这种解决方案以及如何重新使用它会很有帮助。 不要以为这样的东西是凭空冒出来的,没有查找或任何搜索的印象。
"特殊字符"对您来说到底是什么? 那些怎么进入计算列?
你好拉尔斯,
感谢您与我们联系。 我的要求实际上是确定名称(LFA1-NAME)中带有特殊字符的所有供应商编号(LFA1-LIFNR)。 特殊字符是指字母或数字以外的其他字符(即@#£&-_ + *":;!?:等)。假设一个供应商X的名称为AB1C,另一个供应商Y的名称为 XY @ z,那么我需要标记供应商Y。
我已经建立了HANA计算视图,但是找不到任何可以在字符串中定位特殊字符的字符串函数。 请让我知道如何达到此要求。
最多设置5个标签!
这里最简单的方法是使用正则表达式和预定义的字符类。
例如,这里可以使用\ w单词字符类。
通过指定 非单词字符类(通过^ \ w或\ W,请在此处),您可以轻松地编写查询以"标记"这些记录。 像这样的东西:
" SPECIAL_CHARACTER_MARK"将是一个整数,如果在vendor_name中未找到非单词字符,则为零(0),如果存在则大于零。
现在,LOCATE_REGEXPR函数仅在SQL中可用,因此您必须在计算视图之外的SQL命令中或在语言为" SQL"的计算列中使用它。
但是,棘手的一点不是将其纳入您的代码/模型中。 通常比较棘手的是找到正确的正则表达式来标记所需的字符。例如,上述测试数据中的连字符(-)被视为非单词字符,而下划线(_)是
在这里,您必须非常小心,以为您的用例创建正确的正则表达式。
像往常一样,搜索机器是您的朋友... p>
---就像其他信息一样:我多年来一直在处理这种要求。 每当它弹出时,我都需要再次搜索regex语法,规则和详细信息。 这不是任何人都应该记住的事情,而且我不知道有谁这样做。 了解这种解决方案以及如何重新使用它会很有帮助。 不要以为这样的东西是凭空冒出来的,没有查找或任何搜索的印象。
"特殊字符"对您来说到底是什么? 那些怎么进入计算列?
你好拉尔斯,
感谢您与我们联系。 我的要求实际上是确定名称(LFA1-NAME)中带有特殊字符的所有供应商编号(LFA1-LIFNR)。 特殊字符是指字母或数字以外的其他字符(即@#£&-_ + *":;!?:等)。假设一个供应商X的名称为AB1C,另一个供应商Y的名称为 XY @ z,那么我需要标记供应商Y。
我已经建立了HANA计算视图,但是找不到任何可以在字符串中定位特殊字符的字符串函数。 请让我知道如何达到此要求。
谢谢
一周热门 更多>