regex - Oracle查询查找不包含字符的字符串

标签 regex oracle ascii

什么是 Oracle 查询,它将返回字段 mytable.myname 包含 任何 个字符 other 而不是

的所有记录
  1. A-Z
  2. a-z
  3. 0-9
  4. -/\()

最佳答案

您可以使用以下内容:

SELECT * FROM mytable WHERE REGEXP_LIKE (myname, '^[^a-zA-Z0-9\/\\()-]+$');

你也可以用 i 修饰符做同样的事情:

SELECT * FROM mytable WHERE REGEXP_LIKE (myname, '^[^a-z0-9\/\\()-]+$', 'i');

解释:

  • ^ 字符串开头
  • [^___ ] 负字符集(将匹配除其中指定的字符以外的任何字符)
  • + 多次匹配上一组
  • $ 字符串结尾

关于regex - Oracle查询查找不包含字符的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948012/

相关文章:

Verilog 中的 ASCII 到整数转换

linux - 汇编 - 将值转换为 ascii

javascript - 如果需要,删除 CSS 选择器及其相关属性

database - 10g 和 11g 之间的 Oracle 数据库链接

mysql - Oracle 从另一列中选择有或没有值的列条目

node.js - 如何为 koajs 服务器做优雅的停止?

sqlite - 使用 SQLite 将十六进制转换为文本

javascript - 需要有关从 PHP 到 Javascript 的正则表达式的帮助

Python 使用正则表达式解析 HTML

java - 正则表达式给出错误