[RUBY] Suchen Sie nach englischen Wörtern vom Terminal

Einführung

Ich glaube, dass jeder Programmierer alle Operationen vom Terminal aus ausführen möchte. (Da Emacs nicht verwendet werden können, ist es ein Geheimnis, dass es sich um eine vscode-Gruppe handelt.)

Schauen Sie sich also die Bedeutung der englischen Wörter vom Terminal mit Ruby an.

Programmkörper

Vorherige Versionen

dic.rb


system "curl -s https://ejje.weblio.jp/content/#{ARGV[0]} |grep main> ~/dic/tmp.txt"

File.open("#{Dir.home}/dic/tmp.txt", "r") do |f|
  f.readlines[0].match(/.*<td class="content-explanation .*\">(.*)<\/td>.*/)
  puts $1
end

system "rm ~/dic/tmp.txt"

Zeile 1: Verwenden Sie Curl in Systemaufrufen. Ich verwende Weblio English-Japanese Dictionary. Die Argumente werden in URL erweitert und durch grep eingegrenzt. Schreiben Sie es in ~ / dic / tmp.txt.

  1. Zeile: Öffnen Sie die vorherige Datei im Lesemodus. Da "~" in der .File-Methode nicht verwendet werden konnte, wird sie als Dir.home festgelegt.

Zeile 3: Lesen Sie die Datei und extrahieren Sie die japanische Übersetzung mit regulären Ausdrücken. Gib es aus.

Löschen Sie abschließend die Datei.

Neue Version

@scivola wies in den Kommentaren darauf hin. Vielen Dank.

dic.rb


result = `curl -s https://ejje.weblio.jp/content/#{ARGV[0]}`
puts result.match(%r{Main.*<td class="content-explanation .*">(.*)</td>}).to_a[1]

Ich kann es nicht so präzise beschreiben! Mir wurde klar, dass ich noch viel zu lernen habe.

Alias hinzufügen

config.fish


alias dic='ruby ~/dic/dic.rb'

Anwendungsbeispiel

~ 
❯❯❯ dic dog
Hund,(Von der Hundefamilie)雄、雄Hund,くだらない人間、魅力のない男、醜い女、「ぶす」、やつ、くだらないもの、失敗作

Worte natürlich

~ 
❯❯❯ dic takecareof
Pass auf dich auf ..., pass auf dich auf ..., pass auf dich auf ..., nimm es auf ..., handhabe, überlebe, werde dich los, besiege, töte

Die gemeinsame Sprache ist auch in Ordnung

~ 
Physik
natural philosophy、physics

Im Gegenteil, die englische Übersetzung ist auch in Ordnung

Recommended Posts

Suchen Sie nach englischen Wörtern vom Terminal
Suchen Sie nach Zeichenfolge B aus Zeichenfolge A (doppelte Anzahl)
Lineares Suchproblem für Arrays