2015-01-16 4 views
0

안녕하세요, 내 정규식을 일치하는 URL을 @ (전자 메일과 일치하지 않도록하기 위해)로 시작하지 않을 때 찾을 수 있도록 노력하고 있으며, 일치하는 HTML 앵커 태그 (<a href="http://www.website.com">www.website.com</a>)를 방지하기 위해 qoutes를 사용합니다.정규식 웹 사이트 및 전자 메일

정규식 :

/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/` 

그리고 이메일이 일치하는 ([email protected]) 및 방지 (<a href="mailto:[email protected]">[email protected]</a>).

정규식 :

/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ 

는 이메일의 마지막 부분과 일치하는 웹 사이트 정규식을 점점 계속. 내 웹 사이트에서 @ 및 <> "" ''을 방지하고 <> "" ''을 내 이메일 정규식에 포함시키지 않으려면 어떻게해야합니까? 코딩

C#

+0

_ "나는 이메일의 마지막 부분과 일치하는 웹 사이트 정규식을 계속 얻습니다."- 그런 일은 있어서는 안됩니다. 코드 및 예제 입력을 보여줍니다. – CodeCaster

+1

을 의미 했습니까? https://regex101.com/r/sY6eW6/1? –

+0

예, 앵커 태그 안에 여전히 일치하는 정규식을 업데이트했습니다. https://regex101.com/r/sY6eW6/2 – nytrm

답변

0

부분 답 :

if(adressString.Contains("@") && adressString.Length > 3) // it's an email address 

설명 : 구글과 친구의 이메일 adresses와 일치하는 좋은 정규식에 대한 길고 집중적 인 연구가 계속 나는이 매우 강력하고 다양한 솔루션을 함께했다 후 유효한 전자 메일 주소에 대한 단순/명확/명확한 정의가 없기 때문에 가능한 모든 전자 메일 주소와 일치하는 올바른 regEx가 없다는 데 동의하십시오.

+0

연구에서 링크를 추가 할 수 있습니까? 이 점에 대해 더 알고 싶습니다. –

0

문자열이 전자 메일 주소라는 것을 결정할 수있는 좋은 Regex가 없습니다. '@'기호를 확인하는 것이 좋습니다. URI가의 방금 Uri.IsWellFormedUriString(uri)

0

이 내가 이메일에 사용하는 정규식입니다 사용할 수 있습니다 확인을 위해

이 도움이되기를 바랍니다.

public static Regex EmailRegex = new Regex(@"^((([a-zA-Z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-zA-Z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-zA-Z]|[0-9])([a-zA-Z]|[0-9]|\-){0,61}([a-zA-Z]|[0-9])*\.))*([a-zA-Z]|[0-9])([a-zA-Z]|[0-9]|\-){0,61}([a-zA-Z]|[0-9])\.(af|ax|al|dz|as|ad|ao|ai|aq|ag|ar|am|aw|au|at|az|bs|bh|bd|bb|by|be|bz|bj|bm|bt|bo|ba|bw|bv|br|io|bn|bg|bf|bi|kh|cm|ca|cv|ky|cf|td|cl|cn|cx|cc|co|km|cg|cd|ck|cr|ci|hr|cu|cy|cz|dk|dj|dm|do|ec|eg|sv|gq|er|ee|et|eu|fk|fo|fj|fi|fr|gf|pf|tf|ga|gm|ge|de|gh|gi|gr|gl|gd|gp|gu|gt|gg|gn|gw|gy|ht|hm|va|hn|hk|hu|is|in|id|ir|iq|ie|im|il|it|jm|jp|je|jo|kz|ke|ki|kp|kr|kw|kg|la|lv|lb|ls|lr|ly|li|lt|lu|mo|mk|mg|mw|my|mv|ml|mt|mh|mq|mr|mu|yt|mx|fm|md|mc|mn|ms|ma|mz|mm|na|nr|np|nl|an|nc|nz|ni|ne|ng|nu|nf|mp|no|om|pk|pw|ps|pa|pg|py|pe|ph|pn|pl|pt|pr|qa|re|ro|ru|rw|sh|kn|lc|pm|vc|ws|sm|st|sa|sn|cs|sc|sl|sg|sk|si|sb|so|za|gs|es|lk|sd|sr|sj|sz|se|ch|sy|tw|tj|tz|th|tl|tg|tk|to|tt|tn|tr|tm|tc|tv|ug|uk|ua|ae|gb|us|um|uy|uz|vu|ve|vn|vg|vi|wf|eh|ye|zm|zw|com|edu|gov|int|mil|net|org|biz|info|name|pro|aero|coop|museum|arpa|mobi))|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$"); 
+0

http://www.iana.org/domains/root/db – Toto

+0

에서 볼 수있는 것보다 훨씬 많은 수의 개인 정보 보호 정책이 있습니다. 특히 "nike"와 같은 추가 도메인이있는 경우 "축구". 나는이 정규 표현식을 거의 4 년 동안 사용하고 있으며 절대로 나를 실망시키지 못했다. –

관련 문제