2020-08-27 09:03发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我需要用空格替换字符串中所有出现的特殊字符。 字符串中不是数字或字符的任何字符都应替换为空格。能否请您指导我如何使用REGEX来实现?
谢谢
此致
图拉西
你好图拉西(Tulasi)Deepthi Loya
SAP提供了一个示例程序来试用正则表达式RS_SIC_REGEX_CHECK,您可以使用它。 对于您来说,这将起作用,它将只保留数字和字母,其余全部替换
在'mystringa)aksak * 1 <>!@#$%^&*()〜中用空格替换正则表达式'[^ 0-9a-zA-Z] +'的所有出现
Nabheet
正确同意:)谢谢Sandra
您可以在网上找到答案,REGEX并非ABAP专用。
不是数字或字符,我想你是说字符范围是从" 0"到" 9"," a"到" z"以及从" A"到" Z"?
以下是 不在上述范围内的任何字符:
[^ 0-9a-zA-Z]
用空格替换所有出现的字符。 请小心指定带反引号的空格,请勿使用''或空格,因为会删除尾随空格:
``
更多信息:
嗨,谢谢您的回复。 但是上面提到的FM不能代替单引号和双引号。
hi
使用FM ES_REMOVE_SPECIAL_CHARACTER删除任何特殊字符。
嗨,
regex_replace(列名,'\\ [a-zA-Z%#;:`〜!"?$ ^&*()= + [] {},@ _ <> .//\\ | \- \'\\]','')
或
replace_substr(replace_substr(Input.Column_name,'',''),'/t','')match_regex(列名,'[0-9] +','')= 1
match_regex(列名,'[0-9] [AZ] +','')= 1或match_regex(列名,'[0-9] [-] [0-9] +','' )= 1
match_regex(列名,'[AZ] [0-9] +','')= 1或match_regex(列名,'[0-9] [0-9] +','')= 1 或match_regex(栏名称,'[0-9] [0-9] +','')= 1
以上任何一个都可以解决问题
最多设置5个标签!
你好图拉西(Tulasi)Deepthi Loya
SAP提供了一个示例程序来试用正则表达式RS_SIC_REGEX_CHECK,您可以使用它。 对于您来说,这将起作用,它将只保留数字和字母,其余全部替换
谢谢
Nabheet
正确同意:)谢谢Sandra
您可以在网上找到答案,REGEX并非ABAP专用。
不是数字或字符,我想你是说字符范围是从" 0"到" 9"," a"到" z"以及从" A"到" Z"?
以下是 不在上述范围内的任何字符:
用空格替换所有出现的字符。 请小心指定带反引号的空格,请勿使用''或空格,因为会删除尾随空格:
更多信息:
嗨,谢谢您的回复。 但是上面提到的FM不能代替单引号和双引号。
hi
使用FM ES_REMOVE_SPECIAL_CHARACTER删除任何特殊字符。
嗨,
regex_replace(列名,'\\ [a-zA-Z%#;:`〜!"?$ ^&*()= + [] {},@ _ <> .//\\ | \- \'\\]','')
或
replace_substr(replace_substr(Input.Column_name,'',''),'/t','')match_regex(列名,'[0-9] +','')= 1
或
match_regex(列名,'[0-9] [AZ] +','')= 1或match_regex(列名,'[0-9] [-] [0-9] +','' )= 1
或
match_regex(列名,'[AZ] [0-9] +','')= 1或match_regex(列名,'[0-9] [0-9] +','')= 1 或match_regex(栏名称,'[0-9] [0-9] +','')= 1
以上任何一个都可以解决问题
一周热门 更多>