>
import re
a = """ ABC Limited, Nairobi0754009522info@kenyagreats.com DEF Limited, Nairobi0737 308 793info@defoptions.co.ke GHI Electrical Services, Mombasa+254787254230info@ghielectricalservices.co.ke JKL Limited, Kakamega+254541112470jkl@yahoo.com MNO Kenya, Nairobi0797429578mnoe@gmail.com"""
re.split('(^[A-Za-z ,]+)([\+ 0-9]+)([a-z@\]', a)

Pls, 가입 한 비즈니스 이름, 휴대 전화, 도시 및 이메일을 각 인스턴스별로 분리 할 수 ​​있도록 도와주세요

  • 답변 # 1

    이 경우는 데이터와 별도로 문자열을 추출하는 것이 가능해 보입니다.

    (?si)\s*(?P<biz>[ ,a-z]+)(?P<mobile>[\d\s\+]{10,})(?P<email>(?![ ])[@a-z\.]+)
    
    

    데모, 각각 group<biz> 에 문자열을 캡처 group<mobile> group<email>

    파이썬 스크립은 이렇습니다

    ss=""" ABC Limited, Nairobi0754009522info@kenyagreats.com DEF Limited, Nairobi0737 308 793info@defoptions.co.ke GHI Electrical Services, Mombasa+254787254230info@ghielectricalservices.co.ke JKL Limited, Kakamega+254541112470jkl@yahoo.com MNO Kenya, Nairobi0797429578mnoe@gmail.com"""
    regx=re.compile(r'(?si)\s*(?P<biz>[ ,a-z]+)(?P<mobile>[\d\s\+]{10,})(?P<email>(?![ ])[@a-z\.]+)')
    print(regx.sub(r'\g<biz>                    \g<mobile>              \g<email>\n', ss))
    
    

    출력은

    ABC Limited, Nairobi                    0754009522              info@kenyagreats.com
    DEF Limited, Nairobi                    0737 308 793                info@defoptions.co.ke
    GHI Electrical Services, Mombasa                    +254787254230               info@ghielectricalservices.co.ke
    JKL Limited, Kakamega                   +254541112470               jkl@yahoo.com
    MNO Kenya, Nairobi                  0797429578              mnoe@gmail.com
    
    

  • 이전 c++11 - 이동 시맨틱 적용
  • 다음 Jackcess의 Java SELECT @@ Identity