请教一个正则表达式
比如产品的编码规则为:
1,第1位为大写字母P或S;
2,第2位为大字字母A-Z或数字0-9;
3,第3位开始为数字0-9,共3到5位
4,接着为字母A-Z,共1位
5,接着为数字0-9,共1位
6,接着为字符"@",0或1位
7,最后是字符"(S)",或"(P)",可能有也可能没有
我下面的写法会将会将类似P60235A0_sample的PN找出来,我要的是上面第7点以后就结束(后面不能再有字符了),请问应该怎么改?
select j.pn from job_list j where regexp_like(job.pn,'[SP][A-Z0-9]\d{3,5}[A-Z][0-9]@?\(?.\)?')