특정 형식이없는 VARCHAR 열이 있습니다.
다음은 몇 가지 예입니다.
afdsbfgf, jbhttp://www.iabvdfbdos.com/view.php?p_id=170405, arcm, cocm, fbus, bv[123545]
문자열이 'bv [123545]'와 같을 때 괄호 사이의 하위 문자열을 일치시켜야합니다. 이 하위 문자열은 항상 숫자입니다.
나는 그것을 다음과 같이 시도했다.
REGEXP_SUBSTR (my_column, '[^bv\[]+[[:digit:]]+')
그러나 이것은 또한
'jbhttp://www.iabvdfbdos.com/view.php?p_id=170405' and returns "_id=170405"
미리 감사드립니다
대괄호가 줄에 한 번만 나타난다 고 가정합니다. 첫 번째 'bv'항목의 첫 번째 하위 그룹 (괄호 안에있는 부분)과 왼쪽 대괄호, 하나 이상의 숫자, 오른쪽 대괄호를 차례로 가져옵니다. 대괄호는 정규식 엔진에서 문자 클래스를 정의 할 때 이스케이프 처리됩니다.
SQL> select regexp_substr('afdsbfgf, jbhttp://www.iabvdfbdos.com/view.php?p_id=170405, arcm, cocm, fbus, bv[123545]', 'bv\[(\d+)\]', 1, 1, null, 1 ) from dual;
REGEXP
------
123545
SQL>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다