Tôi đang tìm một biểu thức chính quy tìm thấy tất cả các lần xuất hiện của các ký tự kép trong một văn bản, một danh sách, v.v. trên dòng lệnh (Bash).
Câu hỏi chính : Có một cách đơn giản để nhìn cho chuỗi như aa
, ll
, ttttt
vv nơi người ta định nghĩa một biểu thức chính quy mà vẻ bề ngoài cho n lần xuất hiện của nhân vật cùng với ai? Những gì tôi đang tìm kiếm là đạt được điều này ở mức độ rất cơ bản. Trên dòng lệnh. Trong một vỏ Linux.
Sau một vài nghiên cứu, tôi đã đi đến những câu trả lời sau - và những câu hỏi phát sinh từ chúng, do đó họ chỉ cho tôi một gợi ý về giải pháp có thể là gì. Nhưng:
a) (e) grep và vấn đề dấu gạch chéo ngược
grep 'a\{2\}'
tìm kiếmaa
egrep'a{2}'
tìm kiếmaa
Câu hỏi: Sự cần thiết phải thiết lập các phản ứng ngược có thực sự ràng buộc với lệnh tôi sử dụng không? Nếu vậy, bất cứ ai cũng có thể cho tôi gợi ý những gì khác cần được tính đến khi sử dụng (e) grep ở đây?
b) Tôi đã tìm thấy câu trả lời này ở đây cho câu hỏi của mình, mặc dù đó không phải là chính xác những gì tôi đang tìm kiếm:
grep -E '(.)\1' filename
tìm kiếm các mục có cùng ký tự xuất hiện nhiều lần nhưng không hỏi tần suất . Điều này gần với những gì tôi đang tìm kiếm, nhưng tôi vẫn muốn thiết lập một số lần lặp lại.
Tôi có lẽ nên chia câu hỏi này thành hai hoặc nhiều câu hỏi, nhưng sau đó tôi không muốn tràn ngập trang web tuyệt vời này ở đây.
PS: Một câu hỏi, có thể off topic nhưng: là nó in
, inside
, at
hoặc on the shell
. Và có on the command line
đúng không?