prosource

regeXP가 mariadb의 특정 위치에서 이중 문자를 확인합니까?

probook 2023. 7. 17. 21:13
반응형

regeXP가 mariadb의 특정 위치에서 이중 문자를 확인합니까?

저는 4번부터 10번까지 이중문자가 포함된 문자열을 모두 찾아야 합니다.

나는 모든 이중 글자를 찾을 수 있습니다.

'([a-zA-Z])\1{1,3}';

및 위치 기준

SELECT SUBSTRING(columnmame, 4, 9 ) FROM table;

어떻게 결합해야 할지 모르겠어요?

다음 예제를 찾을 수 있도록 합니다.

Liverpool;
Sheffield Central.

하지만 아닙니다.

Arran.

감사해요.

MariaDB에서는 다음과 같은 역참조를 지원하지 않기 때문에 까다롭습니다.\1등. 우리가 할 수 있는 한 가지 속임수는 사용하는 것입니다.LIKE위치 4부터 10까지 열의 하위 문자열에 대한 식입니다.

WITH cte AS (
    SELECT *, SUBSTRING(columnmame, 4, 9) AS c
    FROM yourTable
)

SELECT *
FROM cte
WHERE c LIKE '%aa%' OR c LIKE '%bb%' OR c LIKE '%dd%' OR
      -- rest of alphabet here
      c LIKE '%xx%' OR c LIKE '%yy%' OR c LIKE '%zz%';

언급URL : https://stackoverflow.com/questions/73485212/regexp-to-check-for-double-letters-at-certain-positions-in-mariadb

반응형