정규식 빈 문자열 또는 전자 메일
SO에서 Regex 이메일 유효성 검사를 많이 찾았지만 빈 문자열을 허용할 수 있는 이메일을 찾지 못했습니다.이것은 Regex를 통해서만 가능합니까?빈 문자열 또는 전자 메일만 허용하시겠습니까?나는 이것을 Regex에만 갖고 싶습니다.
이 정규식 패턴은 빈 문자열과 일치합니다.
^$
전자 메일 또는 빈 문자열과 일치합니다.
(^$|^.*@.*\..*$)
빈 문자열 또는 전자 메일 일치
(^$|^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.(?:[a-zA-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)$)
빈 문자열 또는 전자 메일과 일치하지만 빈 공간의 양도 일치
(^\s*$|^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.(?:[a-zA-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)$)
전자 메일 일치 정규식 자체에 대한 자세한 내용은 다음을 참조하십시오.
http://www.regular-expressions.info/email.html
위의 답변은 작동합니다($공백). 하지만 저는 이것을 시도했고 이렇게 그냥 비워두는 것도 작동합니다.
/\A(INTENSE_EMAIL_REGEX|)\z/i
역순으로 같은 것.
/\A(|INTENSE_EMAIL_REGEX)\z/i
이렇게 하면 해결됩니다. 빈 문자열을 허용하거나 전자 메일 ID를 정확하게 지정합니다.
"^$|^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$"
선호합니다/^\s+$|^$/gi
빈 공간과 빈 공간을 일치시킵니다.
console.log(" ".match(/^\s+$|^$/gi));
console.log("".match(/^\s+$|^$/gi));
빈 공간의 길이를 포함해야 하는 경우 다음 정규식을 사용할 수 있습니다.
"^\s*$"
레일 내에서 사용하는 경우 - 활성 레코드 유효성 검사를 설정할 수 있습니다.allow_blank: true
다음과 같이:
validates :email, allow_blank: true, format: { with: EMAIL_REGEX }
전자 메일을 정규식과 일치시키지 마십시오.그것은 극도로 못생기고 길고 복잡하며 당신의 정규 파서는 어쨌든 그것을 처리할 수 없을 것입니다.일치하는 라이브러리 루틴을 찾습니다.전자 메일 주소를 일치시키는 실질적인 문제만 해결하려면(일반적으로 작동하는) 다른 사용자가 제출한 regular-expressions.info 링크를 사용합니다.
빈 문자열에 대해서는,^$
여러 사람이 언급했고 잘 작동할 것입니다.
언급URL : https://stackoverflow.com/questions/5063977/regex-empty-string-or-email
'programing' 카테고리의 다른 글
jQuery의 사용자 지정 이벤트? (0) | 2023.08.08 |
---|---|
매개 변수를 허용하는 expressjs 미들웨어 생성 (0) | 2023.08.08 |
호출 워크북을 닫지 않고 VBA SaveAs를 사용하는 방법은 무엇입니까? (0) | 2023.08.08 |
상위 div를 기준으로 "위치: 고정" div의 너비 설정 (0) | 2023.08.08 |
jQuery로 select 옵션의 레이블을 가져오는 방법은 무엇입니까? (0) | 2023.08.08 |