昔、同僚が「パソコンにドーンが出た!」と言うので見てみるとエラーメッセージに「done」と書かれていました。
大学まで行って何をやっていたのかと詰問したいところです。
最近、話題になっているのがIT業界での英単語の読み間違いに関する記事です。
ここで紹介されている英単語については、私は概ね正しく読んでいました。
しかし「widthはウィドスでなくウィッズ」というようなことが書かれていて驚きました。「ウィドス」と読んでいたからです。
調べてみると発音記号は「wídθ」なので「ウィドス」で間違ってはいませんでした。
発音記号については辞書に載っているので一つ一つ見ればいいのですが面倒です。
一括して調べる方法を考えました。GoogleスプレッドシートとGoogle Apps Scriptを使う方法です。
スクリプトを使う方法
スプレッドシートは次のようにします。
A列に調べたい単語を入力します。
B列に発音記号がセットされます。
スクリプトは次のようにします。
var sheet, i, word, pron;
sheet = SpreadsheetApp.getActiveSheet();
for(i = 2; i <= sheet.getLastRow(); i++) {
if(sheet.getRange(i, 2).getValue() == "") {
word = sheet.getRange(i, 1).getValue();
pron = fetch_pronunciation(word);
sheet.getRange(i, 2).setValue(pron);
}
}
}
function fetch_pronunciation(word) {
var url, response, list, ms, prons, i, parts, pron;
url = "http://ejje.weblio.jp/content/";
response = UrlFetchApp.fetch(url + word);
list = response.getContentText();
list = list.replace(/<span class=phoneticEjjeExt>(.*?)<\/span>/g, "$1");
ms = list.match(/<span class=phoneticEjjeDesc>(.*?)<\/span>/g);
if(ms !== null) {
prons = [];
for(i = 0; i < ms.length; i++) {
parts = ms[i].match(/<span class=phoneticEjjeDesc>(.*?)<\/span>/);
prons.push(parts[1]);
}
pron = prons.join(" / ");
} else {
pron = "";
}
return pron;
}
「pronunciation_list」を実行するとスプレッドシートのB列に発音記号がセットされます。既にセットされているセルについては調べません(上書きされません)。
発音記号は「英和辞典・和英辞典 – Weblio辞書」から取得しています。
発音には米国英語と英国英語があるので両方ある場合は併記されます。
じわじわと一つずつ発音記号がセットされます。
もっとも発音記号の読み方が分からないと意味がないのですが。
Google Apps Scriptの基本的な使い方は「GoogleスプレッドシートからGoogleカレンダーにインポート」を参考にしてください。
スプレッドシートから実行する方法は「スプレッドシート上からスクリプトを実行する」を参考にしてください。
スクリプトを使わない方法
(2019年8月11日追記)
スクリプトを使わずスプレッドシートに直に式をセットする方法です。
A2に単語をセットします。
B2に次のようにセットします。
3行以下は適当にコピーします。
コメント
ありがとうございます。便利です。
P.S.
7行目のpronがpronになっていました
りんちゃんさん
ありがとうございます。使えていただけたようで安心しました。タイプミスは後で修正します。
アメリカ英語の発音記号のみ表示させたい場合、どのようにすればいいですか?
>ゆうたさん
少し考えましたが難しいです。申し訳ありません。