2016-06-13 1 views
0

5MB 텍스트 파일로 모든 이메일 주소를 찾아서 제거해야합니다.Editplus - 이메일 주소 찾기, 그 밖의 모든 항목 삭제

텍스트 파일은 아래의 코드 조각에서 같은 항목이 포함

<snip> 
To: (Address) 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=49ee46a4d9da8492a8d0583f9b13225d5-Claire D 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=a1525d3se9057487d9cacdec1562b7281-Big Tang;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=92414e086e5540d890bg1372316f15222-Matt Perry 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=3c776ca5d813948559a705db141bf0100-Vijay Boy;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=49ee4s6a49da8492a8d0583f9b13225d5-Claire N 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=6e799gd02635149138e4c9d152ab0357e-Becky G 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=f65ed21e081g54effad7c9b4f0778f2b8-Ham Ly 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=d875920114ga748e99f045dbac3e34372-Brad King 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8d945fcc838gb49af822e17b6a3f641b7-Bharat Mass 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8514631915374ef88g3b382f4b7d2d4b2-Pratboss;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=a1525d3e9057487d9cacgdec1562b7281-Huy Tang;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8bc63496da41481fb02fbgcf359c029b1-Dolly Age 
[email protected] 
[email protected] 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=cddab36g026d64df993ca28a445354c0a-Dilshad A. 
[email protected] 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=9843f7566d374cb7ac634637098gc3633-Orewell Dme;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=2198f33e85a24ebab276g2ea14g2415216-Mind God;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=7ea70e47dc7841a7ag007bfdba21feaf4-Prabhu Dist;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8d945fcc838b49afg822e17b6a3f641b7-Bharat Mass 

</snip> 

내가 정규식을 사용하여 에디트 플러스에서 이메일 주소를 찾는 방법을 연구 할 수 있었다. 전자 메일 주소를 제외한 모든 항목을 제거하고 전자 메일 주소가 줄 단위로 구분되는지 확인하기 위해 find/replace 명령을 알아낼 수 없습니다.

[a-zA-Z0-9\.\-_][email protected][a-zA-Z0-9\.\-_]+\.[a-zA-Z0-9\.\-_]+ 

내가 이메일 주소를 제외한 모든 것을 제거하기 위해 도움을 주셔서 감사합니다 :

명령을 찾을 에디트 플러스에 넣으면 아래

은, 나에게 이메일을 제공합니다. 함께

답변

0

설명

([a-zA-Z0-9\.\-_][email protected][a-zA-Z0-9\.\-_]+\.[a-zA-Z0-9\.\-_]+)|. 

교체 : 나는 그럼 그냥 모든 것을 대체 (..your expression..)|.로 표현을 감싸는 것$1

Regular expression visualization

, 문자열 교체 할 경우 일치하는 이메일 주소입니다 표현식을 입력하면 $1으로 캡처되어 반환 문자열로 바뀝니다.

라이브 데모

https://regex101.com/r/kY5dU8/1

샘플 텍스트

<snip> 
To: (Address) 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=49ee46a4d9da8492a8d0583f9b13225d5-Claire D 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=a1525d3se9057487d9cacdec1562b7281-Big Tang;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=92414e086e5540d890bg1372316f15222-Matt Perry 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=3c776ca5d813948559a705db141bf0100-Vijay Boy;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=49ee4s6a49da8492a8d0583f9b13225d5-Claire N 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=6e799gd02635149138e4c9d152ab0357e-Becky G 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=f65ed21e081g54effad7c9b4f0778f2b8-Ham Ly 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=d875920114ga748e99f045dbac3e34372-Brad King 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8d945fcc838gb49af822e17b6a3f641b7-Bharat Mass 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8514631915374ef88g3b382f4b7d2d4b2-Pratboss;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=a1525d3e9057487d9cacgdec1562b7281-Huy Tang;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8bc63496da41481fb02fbgcf359c029b1-Dolly Age 
[email protected] 
[email protected] 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=cddab36g026d64df993ca28a445354c0a-Dilshad A. 
[email protected] 
/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=9843f7566d374cb7ac634637098gc3633-Orewell Dme;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=2198f33e85a24ebab276g2ea14g2415216-Mind God;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=7ea70e47dc7841a7ag007bfdba21feaf4-Prabhu Dist;/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLTM)/cn=Recipients/cn=8d945fcc838b49afg822e17b6a3f641b7-Bharat Mass 

</snip> 

교체 후

[email protected] 
[email protected] 
[email protected] 

설명

NODE      EXPLANATION 
---------------------------------------------------------------------- 
    (      group and capture to \1: 
---------------------------------------------------------------------- 
    [a-zA-Z0-9\.\-_]+  any character of: 'a' to 'z', 'A' to 
          'Z', '0' to '9', '\.', '\-', '_' (1 or 
          more times (matching the most amount 
          possible)) 
---------------------------------------------------------------------- 
    @      '@' 
---------------------------------------------------------------------- 
    [a-zA-Z0-9\.\-_]+  any character of: 'a' to 'z', 'A' to 
          'Z', '0' to '9', '\.', '\-', '_' (1 or 
          more times (matching the most amount 
          possible)) 
---------------------------------------------------------------------- 
    \.      '.' 
---------------------------------------------------------------------- 
    [a-zA-Z0-9\.\-_]+  any character of: 'a' to 'z', 'A' to 
          'Z', '0' to '9', '\.', '\-', '_' (1 or 
          more times (matching the most amount 
          possible)) 
---------------------------------------------------------------------- 
)      end of \1 
---------------------------------------------------------------------- 
|      OR 
---------------------------------------------------------------------- 
    .      any character except \n 
---------------------------------------------------------------------- 
0

이 정말 당신이 아래로 작업을 중단 특히, 복잡하지 않습니다.

정규식에 따르면 이메일 주소는 @이어야합니다. 그래서 글로벌이 정규식을 사용하여 교체 사용 (멀티/글로벌 모드 사용) :

^[^@]+$ 

을 결과는 다음과 같습니다 이제

[email protected] 
[email protected] 

[email protected] 

, 당신은 단지 어떤 수, 줄 바꿈 여러 공백을 교체해야 이 정규식 함께 할 수 :

\s+ 

을 데이터를 들면, 나는 당신이 가독성을 유지하기 위해 간단한 정규식 또는 두 개의 사용을 고려하는 것이 좋습니다 것입니다.이와 같은 정규식을 사용하면 최상의 성능을 얻을 수 있습니다 (other answer은 광산에 비해 10,000 단계 이상의 작업이 필요하며 60 회 또는 1,000 %의 속도로 작업을 수행해야합니다).