Việc sử dụng công cụ tìm kiếm trong python là gì?

Bạn đang tìm kiếm Cách sử dụng python finditer?

 

Khi nào nên sử dụng mô-đun lại chức năng finditer[] trong python?

Nếu bạn đang cố trích xuất các chi tiết xuất hiện của bất kỳ mẫu nào trong văn bản bằng python. Bạn phải sử dụng mô-đun “re” trong python. Trong mô-đun “re” của python, Bạn có thể sử dụng chức năng tìm kiếm với văn bản và mẫu làm đối số. Chức năng tìm kiếm này sẽ cung cấp cho bạn đối tượng phù hợp. Nhưng có một hạn chế là Nó sẽ chỉ cung cấp lần xuất hiện đầu tiên của mẫu. Đầu tiên, hãy xem ví dụ dưới đây -

     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
0 trả về
     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
1 của các đối tượng phù hợp trong chuỗi trong khi
     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
0 trả về
     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
1 của các mẫu phù hợp trong chuỗi. Tham khảo đoạn mã dưới đây để hiểu sự khác biệt giữa
     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
0 và
     
< class 'callable_iterator' >
< callable_iterator object at 0x7f0c5cc24e48 >
gcptutorials
wikipedia
google    
     
     
0

Đoạn mã 1. Trích xuất tên miền từ văn bản

  • Trích xuất các url từ văn bản bằng Python
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    4
  •       
    import re
    
    text = ''' Extract the doamin from the urls www.gcptutorials.com,
    www.wikipedia.org, www.google.com'''
    
    pattern = r'[www.[[A-Za-z_0-9-]+][.\w+]]'
    
    
    find_iter_result = re.finditer[pattern, text]
    
    print[type[find_iter_result]]
    print[find_iter_result]
    
    for i in find_iter_result:
        print[i.group[2]]
        
        
        

    đầu ra

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
  • Trích xuất các url từ văn bản bằng Python
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    5
  •       
    import re
    
    text = ''' Extract the domain from the urls www.gcptutorials.com,
    www.wikipedia.org, www.google.com'''
    
    pattern = r'[www.[[A-Za-z_0-9-]+][.\w+]]'
    
    
    find_all_result = re.findall[pattern, text]
    
    print[type[find_all_result]]
    print[find_all_result]
    for i in find_all_result:
        print[i[1]]
        
        

    đầu ra

    ________số 8

    Đoạn mã 2. Trích xuất email từ văn bản

    Trích xuất email từ văn bản bằng cách sử dụng
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    4
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    0

    Đầu ra ví dụ

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    1Trích xuất email từ văn bản bằng cách sử dụng
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    5
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    3

    Đầu ra ví dụ

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    4

    Phương thức

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    3 trả về một trình vòng lặp trên tất cả các kết quả khớp không chồng chéo trong chuỗi. Đối với mỗi trận đấu, trình vòng lặp trả về một đối tượng Match. Dưới đây là một số ví dụ về việc sử dụng
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    3

    Sự định nghĩa. trả về một trình vòng lặp đi qua tất cả các kết quả khớp không chồng chéo của

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    5 trong
         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    6

    Đối số

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    7 cho phép bạn tùy chỉnh một số thuộc tính nâng cao của công cụ biểu thức chính quy, chẳng hạn như có nên bỏ qua việc viết hoa các ký tự hay không. Bạn có thể tìm hiểu thêm về đối số flags trong blog hướng dẫn chi tiết của tôi

    Thí dụ. Bạn có thể sử dụng iterator để đếm số trận đấu. Trái ngược với phương pháp

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    50 được mô tả ở trên, phương pháp này có ưu điểm là bạn có thể tự phân tích các đối tượng khớp mang nhiều thông tin hơn là chỉ chuỗi con khớp

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    6

    Nếu bạn muốn đếm số trận đấu, bạn có thể sử dụng biến

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    51

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    5

    Hoặc một giải pháp Pythonic hơn

         
    < class 'callable_iterator' >
    < callable_iterator object at 0x7f0c5cc24e48 >
    gcptutorials
    wikipedia
    google    
         
         
    9

    Phương pháp này hoạt động tốt nếu có các kết quả khớp không chồng chéo

    Chris

    Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

    Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

    Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

    Sự khác biệt giữa Findall và Finditer trong Python là gì?

    Nhưng finditer và findall đang tìm những thứ khác nhau. Findall thực sự tìm thấy tất cả các kết quả khớp trong chuỗi đã cho. Nhưng công cụ tìm kiếm chỉ tìm thấy cái đầu tiên, trả về một trình vòng lặp chỉ có một phần tử .

    Có sự khác biệt nào giữa re match[] và re search[] trong mô-đun Python re không?

    Trăn. lại. tìm kiếm [] so với lại. Có sự khác biệt giữa việc sử dụng cả hai chức năng. Cả hai đều trả về kết quả khớp đầu tiên của một chuỗi con được tìm thấy trong chuỗi, nhưng re. match[] chỉ tìm kiếm từ đầu chuỗi và trả về đối tượng khớp nếu tìm thấy .

    Làm cách nào để kiểm tra regex trong Python?

    Các bước so khớp biểu thức chính quy .
    Nhập mô-đun regex với nhập lại
    Tạo một đối tượng Regex với re. chức năng biên dịch[]. .
    Truyền chuỗi bạn muốn tìm kiếm vào phương thức search[] của đối tượng Regex. .
    Gọi phương thức group[] của đối tượng Match để trả về một chuỗi văn bản khớp thực tế

    Tại sao R được sử dụng trong Python regex?

    Giống như trình tự thoát của python, regex cũng có một số ký tự đặc biệt hoặc siêu ký tự viz. . ^ $ * + ? . [ ]. Chúng cũng có ý nghĩa khác nhau khi được sử dụng trong mã regex. Chữ 'r' là viết tắt của 'raw string' .

    Chủ Đề