Mấu chốt của cách tiếp cận này là có quyền truy cập vào một cơ sở dữ liệu tốt về các từ tiếng Anh. Có tệp này trên hệ thống của tôi, /usr/share/dict/words
có rất nhiều từ, nhưng các nguồn khác có thể được sử dụng thay thế.
Tiếp cận
Cách tiếp cận chung của tôi sẽ là sử dụng grep
như vậy:
$ grep -vwf /usr/share/dict/words sample.txt
Trường hợp đầu ra ví dụ của bạn là trong sample.txt
.
Trong thử nghiệm hạn chế của tôi, kích thước của words
từ điển dường như grep
sa lầy . Phiên bản của tôi có 400k + dòng trong đó. Vì vậy, tôi bắt đầu làm một cái gì đó như thế này để phá vỡ nó một chút:
$ head -10000 /usr/share/dict/words > ~/10000words
Chạy mẫu (10k)
Việc chạy tệp của bạn thông qua việc sử dụng 10k từ đầu tiên từ "từ điển".
$ grep -vwf ~/10000words sample.txt
714
01:11:22,267 --> 01:11:27,731
Auch wenn noch viele Generationen auf einen Wechsel hoffen,
715
01:11:27,732 --> 01:11:31,920
werde ich mein Bestes geben
und hoffe, dass andere das gleiche tun.
I'm giving mine, I'm doing my best
hoping the other will do the same
716
01:11:31,921 --> 01:11:36,278
Wir haben eine harte Arbeit vor uns,
um den Lauf der Dinge zu ändern.
it's going to be hard work
for things to turn around.
717
01:11:36,879 --> 01:11:42,881
Wenn man die Zentren künstlicher Besamung,
die Zuchtlaboratorien und die modernen Kuhställe besichtigt,
When visiting artificial insemination centers,
the selection center, modern stables,
LƯU Ý: Cách tiếp cận này chạy trong ~ 1,5 giây, trên máy tính xách tay i5 của tôi.
Nó dường như là một cách tiếp cận khả thi. Khi tôi đưa nó lên đến 100 nghìn dòng, nó bắt đầu mất một thời gian dài, tôi đã hủy bỏ nó trước khi nó kết thúc, vì vậy bạn có thể chia words
từ điển thành nhiều tệp.
LƯU Ý: Khi tôi sao lưu nó xuống 50k dòng, mất 32 giây.
Lặn sâu hơn (50k dòng)
Khi tôi bắt đầu mở rộng từ điển lên tới 50k, tôi gặp phải vấn đề tôi sợ, chồng chéo giữa các ngôn ngữ.
$ grep -vwf ~/50000words sample.txt
714
01:11:22,267 --> 01:11:27,731
715
01:11:27,732 --> 01:11:31,920
werde ich mein Bestes geben
und hoffe, dass andere das gleiche tun.
hoping the other will do the same
716
01:11:31,921 --> 01:11:36,278
Wir haben eine harte Arbeit vor uns,
um den Lauf der Dinge zu ändern.
717
01:11:36,879 --> 01:11:42,881
Wenn man die Zentren künstlicher Besamung,
die Zuchtlaboratorien und die modernen Kuhställe besichtigt,
the selection center, modern stables,
Phân tích vấn đề
Một điều tốt với phương pháp này là bạn có thể loại bỏ -v
và xem vị trí trùng lặp là:
$ grep -wf ~/50000words sample.txt
Auch wenn noch viele Generationen auf einen Wechsel hoffen,
Even if it takes many generations hoping for a change,
I'm giving mine, I'm doing my best
it's going to be hard work
for things to turn around.
When visiting artificial insemination centers,
Từ auf
này rõ ràng có trong cả hai ngôn ngữ ... ít nhất là trong words
tập tin của tôi , vì vậy đây có thể là một chút cách tiếp cận thử và sai để tinh chỉnh danh sách từ khi cần.
LƯU Ý: Tôi biết đó là từ auf
vì grep
tô màu đỏ, nó không hiển thị ở đầu ra ở trên do tính chất hạn chế của SE 8-).
$ grep auf ~/50000words
auf
aufait
aufgabe
aufklarung
auftakt
baufrey
Beaufert
beaufet
beaufin
Beauford
Beaufort
beaufort
bechauffeur