作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在一列中有 200 多个单词的列表。我想替换这些词之后的任何内容。
Eg: E Graham St DDS ==> E Graham St
Trent Ave 4DF ===> Trent Ave
单词的例子是 AVE, ST ....我正在考虑将该字符串传递给一个函数,并且在该函数内部将使用正则表达式替换。
最佳答案
你可以使用类似的东西:
SQL> select regexp_replace(str, '^((.*? ave[ \.])|(.*? st[ \.])|(.*? rd[ \.])|(.*? close[ \.])).*$', '\1', 1, 1, 'i')
2 from (select 'E Graham St DDS' str from dual
3 union all select 'Trent Ave 4DF' from dual
4 union all select 'Foo bar Rd. asd' from dual
5 union all select 'E Graham St St DDS' from dual);
REGEXP_REPLACE(STR,'^((.*?AVE[\.])|(.*?ST[\.])|(.*?RD[\.])|(.*?CLOSE[\.])).*$','
--------------------------------------------------------------------------------
E Graham St
Trent Ave
Foo bar Rd.
E Graham St
关于sql - RegExp_替换 Oracle 中特定单词列表后的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15505384/
我在 Postgres Server 9.5 上运行一些 SQL 一个字段有时有前导空格,包括文字空格和制表符'\t' 在许多编程语言中,使用正则表达式替换很容易,例如在 JavaScript 中:
我是一名优秀的程序员,十分优秀!