需要有关正则表达式的帮助

2020-09-15 18:10发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个带有列

的表

在字符串中具有字母数字值和特殊字符。

我只需要从列中找到那些除了(/和-)以外的特殊字符的记录

例如:

1。 a123

2。 67537

3。 5363/-

4。 5464-

5。/6275

6。 73 AB

7。 Abc.td

我的输出应该给我第七条记录。

Abc.td

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个带有列

的表

在字符串中具有字母数字值和特殊字符。

我只需要从列中找到那些除了(/和-)以外的特殊字符的记录

例如:

1。 a123

2。 67537

3。 5363/-

4。 5464-

5。/6275

6。 73 AB

7。 Abc.td

我的输出应该给我第七条记录。

Abc.td

付费偷看设置
发送
3条回答
悻福寶寶
1楼 · 2020-09-15 18:39.采纳回答

有效的正则表达式为:[^ \ w \/\ s-]

=>匹配任何单词字符集中没有出现的任何字符(= \ w = [a-zA-Z0-9_]),而不是斜杠(= \/)和空格(= \ s) 而不是连字符(=-)。 我添加了不考虑的空格,因为在您的示例中,带有空格的条目不属于预期的结果集。

使用SQL语句进行测试(考虑用您的名称替换表/列的名称):

从YOUR_TABLE中选择*,其中YOUR_COLUMN like_regexpr'[^ \ w \/\ s-]'; 

致谢,
弗洛里安

我是小鹏鹏啊
2楼-- · 2020-09-15 18:51

感谢弗洛里安,这很完美。 :)

callcenter油条
3楼-- · 2020-09-15 18:51

取决于系统的SP版本,您可以使用如下所示的正则表达式:

创建本地临时表#a(" AB" nvarchar(100));
 插入#a(" AB")values('abc ddd');
 插入#a(" AB")值('a.d');
 插入#a(" AB")值('a $ d');
 插入#a(" AB")值('a#dd');
 SELECT * FROM #a WHERE a b LIKE_REGEXPR'\。'; 

这里是文档:

https://help.sap.com/查看器/4fe29514fd584807ac9f2a04f6754767/2.0.00/zh-CN/b40d483dd34d47aa9cc89b4d8a6e617e.html

祝你好运

一周热门 更多>