有効なISBNが常に次のコンテキストで表示されるファイルがあります
isbn = {<ISBN>}
ただし、フォーマットに一般的に使用されるダッシュがないことがよくあります。BBEditでgrepを使用してこれらのダッシュを挿入したいと思います。たとえば、交換したい
isbn = {0226104036}
と
isbn = {0-226-10403-6}
ただし、そのためには、数字の文字列を分割する必要があります。これには、ISBNエンコーディングの知識とgrepのスキルが必要です。
私は検索するところまで行きます
isbn = {([0-5]|7|60[0-9]|61[0-7]|8[0-9]|9[1-4]|9[5-8][0-9]|992[7-9]|99[3-8][0-9]|9990[1-9]|999[1-5][1-9]|9996[1-7])([0-9]+)([0-9]|X)}
と置き換えます
isbn = {\1-\2-\3}
上記の例では、私は
isbn = {0-22610403-6}
場合によっては、最初のダッシュを間違った場所に置くことさえあります。
ISBNはすべてISBN-10であると想定できることに注意してください。また、これをBBEditで行っていることにも注意してください。これには、いくつかのgrep構文の癖があります。ここで見つけた関連ソリューションは、BBEditで失敗するか、この特定のシナリオに適応できません。