Hướng dẫn get email regex python - nhận email regex python

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận
    Examples:

    Input  : Hello  Rohit 
    Output :  
    Here we have only selected email from the given input string.
    
    Input : My 2 favourite numbers are 7 and 10
    Output :2 7 10
    Here we have selected only digits.
    

    Hãy giả sử một tình huống trong đó bạn phải đọc một số dữ liệu cụ thể như số điện thoại, địa chỉ email, ngày, một bộ sưu tập các từ, v.v ... Làm thế nào bạn có thể làm điều này một cách rất hiệu quả? Cách tốt nhất để thực hiện điều này bằng cách diễn đạt thông thường.
    Regular expression is a sequence of character(s) mainly used to find and replace patterns in a string or file.
    So we can say that the task of searching and extracting is so common that Python has a very powerful library called regular expressions that handles many of these tasks quite elegantly.

    Hãy lấy một ví dụ trong đó chúng ta chỉ phải tìm ra email từ đầu vào đã cho bằng biểu thức thông thường.Examples:Biểu thức thông thường Biểu thức thường xuyên là một chuỗi (các) ký tự chủ yếu được sử dụng để tìm và thay thế các mẫu trong một chuỗi hoặc tệp. Vì vậy, chúng ta có thể nói rằng nhiệm vụ tìm kiếm và trích xuất là phổ biến đến mức Python có một thư viện rất mạnh được gọi là biểu thức chính quy Điều đó xử lý nhiều nhiệm vụ này khá thanh lịch.
    Biểu tượngCách sử dụng
    $Khớp với phần cuối của dòng
    \S Phù hợp với khoảng trắng
    \S Phù hợp với bất kỳ ký tự không gian trắng nào
    \S Phù hợp với khoảng trắng
    \S Phù hợp với bất kỳ ký tự không gian trắng nào
    * Lặp lại một nhân vật bằng không hoặc nhiều lần
    *? Lặp lại một nhân vật bằng không hoặc nhiều lần (không xanh)
    [aeiou] +
    [^XYZ] Lặp lại một nhân vật một hoặc nhiều lần
    [a-z0-9] +?
    Lặp lại một nhân vật một hoặc nhiều lần (không màu xanh lá cây) Khớp với một ký tự duy nhất trong bộ được liệt kê
    Khớp với một ký tự duy nhất không có trong bộ được liệt kê Tập hợp các ký tự có thể bao gồm một phạm vi

    .

    Cho biết nơi trích xuất chuỗi sẽ bắt đầu

    )

    s=''
    
    8
    s=''
    
    9

    Chỉ ra nơi trích xuất chuỗi là kết thúc

    s=''
    
    0
    s=''
    
    1

    ['', '']
    
    8
    ['', '']
    
    9

    s=''
    
    8
    s.split("@")[0]
    
    0

    Output:

    ['', '']
    

    Hướng dẫn get email regex python - nhận email regex python

    Hướng dẫn get email regex python - nhận email regex python

    Hướng dẫn get email regex python - nhận email regex python

    s=''
    
    0
    s=''
    
    1
    s=''
    
    2

    • s=''
      
      3
      s=''
      
      1
      s=''
      
      5
      s=''
      
      6
      s=''
      
      7
    • ['', '']
      
      8
      xjhgjg876896
      
      1
    • s=''
      
      3
      s=''
      
      1
      s=''
      
      5
      xjhgjg876896
      
      7
      xjhgjg876896
      
      8

    Đầu ra:

    s=''
    

    Đã trả lời ngày 10 tháng 3 năm 2018 lúc 8:10

    xjhgjg876896
    

    Tôi có ý tưởng về Regex - như trong tôi biết tôi cần phải quét cho đến "@" và sau đó lưu trữ kết quả - nhưng tôi không chắc làm thế nào để thực hiện điều này trong Python.

    Cảm ơn vì đã dành thời gian cho tôi.

    Đã hỏi ngày 4 tháng 3 năm 2013 lúc 20:27Mar 4, 2013 at 20:27

    4

    Bạn chỉ nên sử dụng phương pháp chuỗi

    s.split("@")[0]
    
    1:

    s.split("@")[0]
    

    Hướng dẫn get email regex python - nhận email regex python

    Abarnert

    343K45 Huy hiệu vàng574 Huy hiệu bạc654 Huy hiệu Đồng45 gold badges574 silver badges654 bronze badges

    Đã trả lời ngày 4 tháng 3 năm 2013 lúc 20:28Mar 4, 2013 at 20:28

    Hướng dẫn get email regex python - nhận email regex python

    David Robinsondavid RobinsonDavid Robinson

    75,8K15 Huy hiệu vàng162 Huy hiệu bạc180 Huy hiệu đồng15 gold badges162 silver badges180 bronze badges

    0

    Như những người khác đã chỉ ra, giải pháp tốt hơn là sử dụng

    s.split("@")[0]
    
    1.

    Nếu bạn thực sự quan tâm đến việc sử dụng

    s.split("@")[0]
    
    3 thì điều này sẽ hoạt động:

    import re
    
    regexStr = r'^([^@]+)@[^@]+$'
    emailStr = ''
    matchobj = re.search(regexStr, emailStr)
    if not matchobj is None:
        print matchobj.group(1)
    else:
        print "Did not match"
    

    Và nó in ra

    foo
    

    Lưu ý: Điều này sẽ chỉ hoạt động với các chuỗi email là

    s.split("@")[0]
    
    4. Nếu bạn muốn khớp các email loại
    s.split("@")[0]
    
    5, bạn cần điều chỉnh Regex.
    This is going to work only with email strings of
    s.split("@")[0]
    
    4. If you want to match emails of type
    s.split("@")[0]
    
    5, you need to adjust the regex.

    Sindri þór

    2.8473 huy hiệu vàng25 Huy hiệu bạc32 Huy hiệu đồng3 gold badges25 silver badges32 bronze badges

    Đã trả lời ngày 4 tháng 3 năm 2013 lúc 20:38Mar 4, 2013 at 20:38

    TuxdudetuxdudeTuxdude

    45,6K14 Huy hiệu vàng105 Huy hiệu bạc107 Huy hiệu đồng14 gold badges105 silver badges107 bronze badges

    0

    Bạn không nên sử dụng Regex hoặc

    s.split("@")[0]
    
    1.

    local, at, domain = ''.rpartition('@')
    

    Đã trả lời ngày 13 tháng 3 năm 2019 lúc 16:29Mar 13, 2019 at 16:29

    Hướng dẫn get email regex python - nhận email regex python

    jhrrjhrrjhrr

    1.54413 Huy hiệu bạc21 Huy hiệu đồng13 silver badges21 bronze badges

    #!/usr/bin/python3.6
    
    
    def email_splitter(email):
        username = email.split('@')[0]
        domain = email.split('@')[1]
        domain_name = domain.split('.')[0]
        domain_type = domain.split('.')[1]
    
        print('Username : ', username)
        print('Domain   : ', domain_name)
        print('Type     : ', domain_type)
    
    
    email_splitter('')
    

    Đầu ra:

    Username :  foo.goo
    Domain   :  bar
    Type     :  com
    

    Đã trả lời ngày 10 tháng 3 năm 2018 lúc 8:10Mar 10, 2018 at 8:10

    Hướng dẫn get email regex python - nhận email regex python

    1

    Đây là một cách khác, sử dụng phương thức chỉ mục.

    ['', '']
    
    0

    Và đầu ra là

    xjhgjg876896
    

    Đã trả lời ngày 5 tháng 3 năm 2020 lúc 20:03Mar 5, 2020 at 20:03

    Hướng dẫn get email regex python - nhận email regex python

    StrykerstrykerStryker

    5.39254 Huy hiệu bạc66 Huy hiệu Đồng54 silver badges66 bronze badges

    Cần cài đặt gói PIP Cài đặt email_split

    ['', '']
    
    2

    Đã trả lời ngày 2 tháng 2 năm 2021 lúc 12:36Feb 2, 2021 at 12:36

    Hướng dẫn get email regex python - nhận email regex python

    Dưới đây sẽ giúp bạn làm điều đó:

    ['', '']
    
    3

    Đã trả lời ngày 15 tháng 5 năm 2013 lúc 14:08May 15, 2013 at 14:08

    Hướng dẫn get email regex python - nhận email regex python

    Câu trả lời tốt đã được trả lời nhưng tôi muốn đặt của tôi dù sao đi nữa.

    • Nếu tôi có một email, tôi muốn nhận được "John".

      Tôi chỉ muốn nhận được "John"

    • Nếu tôi có một email, tôi muốn nhận được "John"

      Tôi chỉ muốn nhận được "John"

    Nếu tôi có một email, tôi muốn nhận được "John"

    ['', '']
    
    4

    Vì vậy, đây là những gì tôi đã làm:

    Chúc mừngMay 22, 2016 at 22:59

    Đã trả lời ngày 22 tháng 5 năm 2016 lúc 22:59Sindri Þór

    2.8473 huy hiệu vàng25 Huy hiệu bạc32 Huy hiệu đồng3 gold badges25 silver badges32 bronze badges

    Đã trả lời ngày 4 tháng 3 năm 2013 lúc 20:38

    ['', '']
    
    5

    Tuxdudetuxdude

    45,6K14 Huy hiệu vàng105 Huy hiệu bạc107 Huy hiệu đồngNov 9, 2018 at 21:57

    Hướng dẫn get email regex python - nhận email regex python

    Bạn không nên sử dụng Regex hoặc

    s.split("@")[0]
    
    1.

    ['', '']
    
    6

    Đã trả lời ngày 13 tháng 3 năm 2019 lúc 16:29Aug 15 at 14:57

    jhrrjhrr

    ['', '']
    
    7

    1.54413 Huy hiệu bạc21 Huy hiệu đồngOct 30, 2021 at 3:50