테스트 사이트 - 개발 중인 베타 버전입니다

정규표현식 문의 채택완료

sinbi 6년 전 조회 4,436

예: $member['mb_id']가 총길이는 10 (앞영문7글자 뒤숫자3글자 조합)인 경우

 

어떤 식으로 표현이 가능할까요.

요즘, 이런 패턴으로 스팸가입하는 유저가 많더라구요.

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
6년 전

$pattern = "#^[a-zA-Z]{7}\d{3}$#";

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

s
sinbi
6년 전
평정심 님 이렇게 넣어주면 될까요?

$pattern = "#^[a-zA-Z]{7}\d{3}$#";

$rsql = " select mb_id from {$g5['member_table']} where mb_name in ('', ' ', 'Ȳ', '{$pattern}') ";
평정심
6년 전
무엇보다 중요한 것은 직접해 보시는것이 가장 빠르겠죠.
하지만 패턴이 이렇게는 될것 같지 않아 보입니다.
될지 안될지는 모르겠지만 참조해 보시죠.
where mb_name in ('', ' ', 'Ȳ') and mb_name REGEXP '{$pattern}'
s
sinbi
6년 전
평정심 님, 감사합니다. ^^*

댓글을 작성하려면 로그인이 필요합니다.

s
sinbi Expert
6년 전

답변해주신 두 분 모두 감사합니다. 

 

스팸회원 다 죽었엉. 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

s
sinbi
6년 전
혹시, PHP 코드로 가능할까요?

https://sir.kr/g5_tip/3655
제로나라 님 코드에 넣어서 막아볼까 하거든용.

$rsql = " select mb_id from {$g5['member_table']} where mb_name in ('', ' ', 'Ȳ', '여기넣어볼까하구') ";
코딩하는기계
6년 전
preg_match('/\b[a-z]{7}[0-9]{3}\b/i', $input_line, $output_array);

https://www.phpliveregex.com/#tab-preg-match

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인