\\"
큰따옴표( 대신 ) 를 잘못 이스케이프 처리한 매우 큰 CSV를 정리해야 합니다 \"
. 모든 인스턴스를 어떻게 교체할 수 있습니까?
\\"
\\\"
\\\\"
.....
아니면 \"
그냥 공간?
이후 \
나는 혼란을 피하기 위해 이 질문을 했습니다.
답변1
이것으로 충분합니다:
sed 's/\\\\*"/\\"/'
이렇게 하면 백슬래시( \\
) 뒤에 임의 개수의 백슬래시( \\*
)와 큰따옴표( "
)가 뒤따르는 백슬래시 뒤에 큰따옴표( \\"
)가 오는 것으로 대체됩니다. sed 's/\\\\*"/\\"/g
한 줄에 있는 모든 항목을 바꾸려면 '를 사용하세요 .
답변2
sed
확장 정규식 옵션을 지원하는 경우 대안 -E
(백슬래시 수는 계산되지 않음):
sed -E 's/[\]+"/\\"/g' file