user_id, name, mailuser_id는 Primary Key이며, 웹사이트 로그인 정보를 가지고 있는 테이블입니다._, 점 ., 또는 하이픈 -을 포함할 수 있다. 접두사는 반드시 문자로 시작해야 한다.@leetcode.com으로 끝나야 한다.Users 테이블:
+---------+-----------+-------------------------+
| user_id | name | mail |
+---------+-----------+-------------------------+
| 1 | Winston | winston@leetcode.com |
| 2 | Jonathan | jonathanisgreat |
| 3 | Annabelle | bella-@leetcode.com |
| 4 | Sally | sally.come@leetcode.com |
| 5 | Marwan | quarz#2020@leetcode.com |
| 6 | David | david69@gmail.com |
| 7 | Shapiro | .shapo@leetcode.com |
+---------+-----------+-------------------------+
출력 예시:
+---------+-----------+-------------------------+
| user_id | name | mail |
+---------+-----------+-------------------------+
| 1 | Winston | winston@leetcode.com |
| 3 | Annabelle | bella-@leetcode.com |
| 4 | Sally | sally.come@leetcode.com |
+---------+-----------+-------------------------+
@leetcode.com으로 끝나는지 확인.SELECT *
FROM Users
WHERE mail REGEXP '^[a-zA-Z][a-zA-Z0-9_.-]*@leetcode[.]com$';
$로 검증 마지막을 닫아야 함:
REGEXP 사용 시, 패턴 끝에 $를 추가하여 문자열이 그 위치에서 끝나도록 강제함.@leetcode.comFILTER 같은 형식을 걸러내지 못하므로 유효하지 않은 이메일이 포함될 수 있음.[]는 단일 문자 단위:
[a-zA-Z0-9_.-]는 해당 문자 중 하나만을 의미.*를 사용해 0번 이상 반복될 수 있도록 해야 복수의 문자를 허용.^는 문자열의 시작, $는 문자열의 끝을 검증하는 데 필수적이다. 이를 통해 문자열이 특정 형식으로 끝나는지 정확하게 판단할 수 있음.[]는 단일 문자 검증에 사용되며, 반복을 나타내려면 *, +, 또는 {n} 등의 반복자를 사용해야 함.정규 표현식을 활용해 유효한 데이터를 필터링하고, 특정 형식의 문자열을 효과적으로 처리할 수 있는 기술을 익힐 수 있었습니다.