まっすぐな一重引用符と二重引用符を二重引用符(‘ ’
、)に置き換えたいと思います。“ ”
シェルコマンドを使用してこれをどのように実行できますか?
ベストアンサー1
この入力ファイルを使用してください(提供:やけど):
$ cat file
When 'chapmen billies' lea "the street" and 'drouthy' neebors "neebors" meet.
そしていくつかの奇妙な:
awk '{
while ( match($0,/\047[^\047]*\047/) ) {
$0 = substr($0,1,RSTART-1) "‘" substr($0,RSTART+1,RLENGTH-2) "’" substr($0,RSTART+RLENGTH)
}
while ( match($0,/"[^"]*"/) ) {
$0 = substr($0,1,RSTART-1) "“" substr($0,RSTART+1,RLENGTH-2) "”" substr($0,RSTART+RLENGTH)
}
print
}' file
When ‘chapmen billies’ lea “the street” and ‘drouthy’ neebors “neebors” meet.
上記は、引用符が常にペアで来ると仮定しています。