Tôi có một vấn đề đơn giản, nhưng không thể đi kèm với một giải pháp đơn giản :)Phát hiện lặp lại trong chuỗi
Giả sử tôi có một chuỗi. Tôi muốn phát hiện nếu có một sự lặp lại trong đó.
tôi muốn:
"blablabla" # => (bla, 3)
"rablabla" # => (bla, 2)
Vấn đề là tôi không biết những gì mô hình tôi đang tìm kiếm (Tôi không có "bla" như đầu vào).
Bất kỳ ý tưởng nào?
EDIT:
Thấy các ý kiến, tôi nghĩ rằng tôi nên chính xác hơn một chút những gì tôi có trong tâm trí:
- Trong một chuỗi, thì hoặc là một mô hình được repeted hay không.
- Mẫu được lặp lại có thể có độ dài bất kỳ.
Nếu có mẫu, nó sẽ được lặp đi lặp lại cho đến khi kết thúc. Nhưng chuỗi có thể kết thúc ở giữa mẫu.
Ví dụ:
"testblblblblb" # => ("bl",4)
Không âm thanh như một vấn đề rất đơn giản với tôi – Hubro
Tôi muốn nói 'rablabla' nên trả về '(' abl ', 2)', phải không? –
theo ví dụ của bạn, chuỗi lặp lại có độ dài 3. Vì vậy, bạn đang tìm kiếm các chuỗi chỉ có chiều dài 3? – Jayy