Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex oracle正则表达式从右侧限制字符的位置_Regex_Oracle - Fatal编程技术网

Regex oracle正则表达式从右侧限制字符的位置

Regex oracle正则表达式从右侧限制字符的位置,regex,oracle,Regex,Oracle,我无法继续下去,花了整个时间做谷歌,但没有找到一个解决方案,我下面的查询 我想要一个满足以下要求的Oracle正则表达式: 以ABCD开头,后跟带“N”的可变长度字母数字 从右起第三或第四处出现 例如,ABCD201312102751N11或ABCD201312012012751N121您可以使用的正则表达式是: ^ABCD[[:alnum:]]+N[[:digit:]]{2,3}$ 说明: ^-字符串的开头 ABCD-LiteralABCD [[:alnum:]+-字母数字字符,出现1

我无法继续下去,花了整个时间做谷歌,但没有找到一个解决方案,我下面的查询

我想要一个满足以下要求的Oracle正则表达式:

  • 以ABCD开头,后跟带“N”的可变长度字母数字
  • 从右起第三或第四处出现

例如,
ABCD201312102751N11
ABCD201312012012751N121
您可以使用的正则表达式是:

^ABCD[[:alnum:]]+N[[:digit:]]{2,3}$
说明:

  • ^
    -字符串的开头
  • ABCD
    -Literal
    ABCD
  • [[:alnum:]+
    -字母数字字符,出现1次或更多次
  • N
    -文字
    N
  • [[:digit:]{2,3}
    -2或3位(不多也不少)
  • $
    -字符串结束

你是指从右边算起的第三个还是第四个<代码>^ABCD[:alnum:]+N[:digit:]{2,3}$?@Stribizev是的,是的,你是摇滚明星,我花了半天的时间。非常感谢。我想接受它作为答案,请更新答案。我添加了答案。另外,请将您尝试的内容发布到您的问题主体。顺便说一句,regex101.com理解POSIX正则表达式,但它可以允许更多内容。在那里测试regexp时要小心。我用它只是为了说明正则表达式是如何工作的。