Tr: 17 13 ký tự
(Hoặc 14 10 nếu bạn chỉ tính các đối số
tr -s ta-s -1
Chạy mẫu:
bash-4.3$ tr -s ta-s -1 <<< heads
1
bash-4.3$ tr -s ta-s -1 <<< tails
-1
Giải thích ngắn gọn:
tr
là viết tắt của phiên âm, có nghĩa là, thay thế từng ký tự của đầu vào được tìm thấy trong đối số thứ nhất bằng ký tự ở cùng vị trí trong đối số thứ hai:
tr ta -1 <<< tails # replaces t ⇢ -, a → 1
⇒ -1ils
Nếu đối số thứ nhất dài hơn, các ký tự không khớp vị trí trong đối số thứ hai sẽ được thay thế bằng ký tự cuối cùng của đối số thứ hai:
tr tals -1 <<< tails # replaces t ⇢ -, a → 1, l → 1, s → 1
⇒ -1i11
Khi tùy chọn -s
( --squeeze-repeats
) được sử dụng, các ký tự liên tiếp sẽ được thay thế bằng cùng một ký tự được thay thế cùng một lúc:
tr -s tals -1 <<< tails # replaces t ⇢ -, a → 1, l+s → 1
⇒ -1i1
Vì vậy, nếu chúng ta liệt kê tất cả các nhân vật trong Trò chơi đuôi đuôi, chúng ta sẽ có được thứ mình cần:
tr -s tails -1 <<< tails # replaces t ⇢ -, a+i+l+s → 1
⇒ -1
Tương tự như vậy đối với những người đứng đầu của người Viking, nhưng tuần trước cần phải giữ những người đứng đầu trước để tiêu trừ điểm trừ (các ký tự được sắp xếp theo thứ tự abc cho creepiness):
tr -s taedhs -1 <<< heads # replaces h+e+a+d+s → 1
⇒ 1
Hợp nhất tất cả các nhân vật cổ điển của những người hâm mộ và những người đứng đầu của họ trong một cuộc tranh cãi đầu tiên, giữ cho Típ trước mặt dẫn đến giải pháp cuối cùng:
tr -s tadehils -1 <<< tails # replaces t → -, a+i+l+s → 1
⇒ -1
tr -s tadehils -1 <<< heads # replaces h+e+a+d+s → 1
⇒ 1
Để tránh liệt kê các ký tự, thay vào đó , một khoảng từ - đến định dạng có thể được sử dụng.