この問題は、Excelファイルの質問と回答を、Anki Flashカードプログラムが説明したように処理する.txtファイルにインポートしようとすることに関連しています。ここ。複数のフィールドを持つことはできないため、オプションを1つのフィールドに設定する必要があります。
Ankiのマニュアルで説明されているように、LibreOfficeでCSV形式で保存されたデータ(フィールドセパレータとして使用されるセミコロン - マニュアルの内容とは異なります)
Question ipsun; option 1 ; option 2 ; option 3 ; option 4 ; ... ; option n
Question ipsun; option 1 ; option 2 ; option 3 ; option 4 ; ... ; option n
...
すべてのオプションを含む各項目は、「フラッシュカード」という行にあります。カードでは、前半はセミコロンの前に、後半はセミコロンの後に続きます。改行などの2番目のフラッシュカード。
必要な出力はUTF-8でなければなりません。
Question ipsun; option 1 | option 2 | option 3 | option 4 | ... | option n
Question ipsun; option 1 | option 2 | option 3 | option 4 | ... | option n
...
私のPerl擬似コードは以下に基づいています。回答
perl -00 -pe s/;/\0/; s/;/ |/g; s/\0/;/' file
コメントしました。
perl -00 -pe ' # each record is separated by blank lines (-00)
# read the file a record at a time and auto-print (-p)
s/;/\0/; # turn the first semicolon into a null byte
s/;/ |/g; # replace all other semicolons with " |"
s/\0/;/ # restore the first semicolon
' file
最初のセミコロンの後のすべてのセミコロンを変更する方法は?
ベストアンサー1
GNUの使用sed
:
sed 's/;/|/2g'
;
|
2回目の発生からグローバルに交換します。
sed 's/;/|/2
sumはPOSIXですが、s/;/|/g
設定はPOSIXではなく、動作は実装ごとに異なります。ただし、GNU実装を使用すると、sed
この動作が明確に文書化されます。