BUILT-IN FUNCTIONS
DICTIONARY METHODS
LIST METHODS
SET METHODS
STRING METHODS
TUPLE METHODS
PYTHON FUNCTION
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Tìm tất cả các lần xuất hiện của một xâu con trong một xâu đã cho trong Python

Trong bài toán này, mình sẽ viết một chương trình Python để tìm tất cả các lần xuất hiện của một xâu con trong một xâu đã cho mà không phân biệt chữ hoa, chữ thường.

Mình sẽ duyệt qua xâu gốc và so sánh từng phần tử với xâu con theo cùng một trình tự, bỏ qua việc phân biệt chữ hoa và chữ thường. Khi tìm thấy một lần xuất hiện của xâu con, chúng ta sẽ lưu vị trí xuất hiện đó vào danh sách để cuối cùng in ra tất cả các vị trí.

Tìm tất cả các lần xuất hiện của một xâu con trong Python

Dưới đây là chương trình Python để tìm tất cả các lần xuất hiện của một xâu con trong một xâu đã cho (không phân biệt chữ hoa, chữ thường):

def tim_lan_xuat_hien(xau_goc, xau_con):
    # Chuyển đổi cả xâu gốc và xâu con thành chữ thường để bỏ qua phân biệt chữ hoa, chữ thường
    xau_goc_lower = xau_goc.lower()
    xau_con_lower = xau_con.lower()

    # Khởi tạo danh sách để lưu các vị trí xuất hiện của xâu con
    vi_tri_xuat_hien = []

    # Độ dài của xâu con
    do_dai_xau_con = len(xau_con)

    # Duyệt qua xâu gốc để tìm các lần xuất hiện của xâu con
    for i in range(len(xau_goc_lower) - do_dai_xau_con + 1):
        if xau_goc_lower[i:i + do_dai_xau_con] == xau_con_lower:
            vi_tri_xuat_hien.append(i)

    return vi_tri_xuat_hien

# Hàm main để kiểm tra
def main():
    xau_goc = input("Nhập xâu gốc: ")
    xau_con = "USA"

    ket_qua = tim_lan_xuat_hien(xau_goc, xau_con)
    if ket_qua:
        print(f"Các lần xuất hiện của \"{xau_con}\" trong \"{xau_goc}\" (không phân biệt chữ hoa, chữ thường):")
        print(ket_qua)
    else:
        print(f"Không tìm thấy lần xuất hiện nào của \"{xau_con}\" trong \"{xau_goc}\" (không phân biệt chữ hoa, chữ thường).")

if __name__ == "__main__":
    main()

Giải thích kết quả:

  • Chương trình sẽ yêu cầu người dùng nhập xâu gốc và xâu con (trong trường hợp này, xâu con là "USA").
  • Hàm tim_lan_xuat_hien được sử dụng để tìm tất cả các lần xuất hiện của xâu con trong xâu gốc (không phân biệt chữ hoa, chữ thường).
  • Đầu tiên, mình chuyển đổi cả xâu gốc và xâu con thành chữ thường bằng cách sử dụng phương thức lower().
  • Sau đó, mình duyệt qua xâu gốc bằng vòng lặp for để tìm các lần xuất hiện của xâu con.
  • Khi tìm thấy một lần xuất hiện của xâu con, chúng ta lưu vị trí xuất hiện đó vào danh sách vi_tri_xuat_hien.
  • Cuối cùng, mình in ra danh sách các vị trí xuất hiện của xâu con.

Ví dụ:

Nhập:

Nhập xâu gốc: Welcome to USA. USA is a beautiful country.

Kết quả:

Các lần xuất hiện của "USA" trong "Welcome to USA. USA is a beautiful country." (không phân biệt chữ hoa, chữ thường):
[11, 15]

Nhập:

Nhập xâu gốc: Hello, USA!

Kết quả:

Các lần xuất hiện của "USA" trong "Hello, USA!" (không phân biệt chữ hoa, chữ thường):
[7]

Trên đây là một giải pháp sử dụng Python để tìm tất cả các lần xuất hiện của một xâu con trong một xâu đã cho mà không phân biệt chữ hoa, chữ thường. Hy vọng rằng blog này sẽ hữu ích cho bạn khi làm việc với các bài toán liên quan đến xâu ký tự trong Python. Chúc bạn thành công trong việc viết các chương trình xử lý xâu ký tự phức tạp hơn!

test php

Bài giải

-------------------- ######## --------------------

Câu hỏi thường gặp liên quan:

Cùng chuyên mục:

Làm chủ Pattern Matching trong Python 3.10

Làm chủ Pattern Matching trong Python 3.10

Cách yêu cầu người dùng nhập liệu đến khi nhận được phản hồi hợp lệ trong Python

Cách yêu cầu người dùng nhập liệu đến khi nhận được phản hồi hợp lệ trong Python

8 Mẹo Refactor Code Python nhanh gọn (Phần 2)

8 Mẹo Refactor Code Python nhanh gọn (Phần 2)

Cách sao chép file trong Python

Cách sao chép file trong Python

31 Phương thức xử lý chuỗi (String) quan trọng trong Python

31 Phương thức xử lý chuỗi (String) quan trọng trong Python

Cách xóa file và thư mục trong Python

Cách xóa file và thư mục trong Python

Tìm hiểu về *args và **kwargs trong Python

Tìm hiểu về *args và **kwargs trong Python

Cách làm phẳng danh sách lồng nhau trong Python

Cách làm phẳng danh sách lồng nhau trong Python

Phân tích dữ liệu Apple Health bằng Python

Phân tích dữ liệu Apple Health bằng Python

Cách loại bỏ phần tử trùng lặp khỏi danh sách (List) trong Python

Cách loại bỏ phần tử trùng lặp khỏi danh sách (List) trong Python

Cách cắt (slicing) chuỗi trong Python

Cách cắt (slicing) chuỗi trong Python

Cách kiểm tra một đối tượng có thể lặp (iterable) trong Python

Cách kiểm tra một đối tượng có thể lặp (iterable) trong Python

Giới thiệu về Graph Machine Learning trong Python

Giới thiệu về Graph Machine Learning trong Python

Hướng dẫn sử dụng Rich, Typer, và SQLite trên terminal bằng Python

Hướng dẫn sử dụng Rich, Typer, và SQLite trên terminal bằng Python

Tìm hiểu về từ khóa self trong các lớp Python

Tìm hiểu về từ khóa self trong các lớp Python

Phạm vi toàn cục, cục bộ và không cục bộ trong Python

Phạm vi toàn cục, cục bộ và không cục bộ trong Python

Hướng dẫn cài đặt và sử dụng OpenCV trong Python

Hướng dẫn cài đặt và sử dụng OpenCV trong Python

Cách chọn ngẫu nhiên một phần tử từ danh sách trong Python

Cách chọn ngẫu nhiên một phần tử từ danh sách trong Python

Metaclasses trong Python

Metaclasses trong Python

Làm việc với hình ảnh trong OpenCV sử dụng Python

Làm việc với hình ảnh trong OpenCV sử dụng Python

Top