다음과 같이 탭으로 구분 된 데이터를 변환하는 가장 효율적인 방법은 무엇입니까?
a b c d cat
NULL NULL NULL NULL NULL
NULL NULL NULL d d
NULL NULL c NULL c
NULL NULL c d c; d
NULL b NULL NULL b
NULL b NULL d b; d
NULL b c NULL b; c
NULL b c d b; c; d
a NULL NULL NULL a
a NULL NULL d a; d
a NULL c NULL a; c
a NULL c d a; c; d
a b NULL NULL a; b
a b NULL d a; b; d
a b c NULL a; b; c
a b c d a; b; c; d
이것에 가까운 것 :
a | b | c | d | cat
-----+------+------+------+-----------
NULL | NULL | NULL | NULL | NULL
NULL | NULL | NULL | d | d
NULL | NULL | c | NULL | c
NULL | NULL | c | d | c; d
NULL | b | NULL | NULL | b
NULL | b | NULL | d | b; d
NULL | b | c | NULL | b; c
NULL | b | c | d | b; c; d
a | NULL | NULL | NULL | a
a | NULL | NULL | d | a; d
a | NULL | c | NULL | a; c
a | NULL | c | d | a; c; d
a | b | NULL | NULL | a; b
a | b | NULL | d | a; b; d
a | b | c | NULL | a; b; c
a | b | c | d | a; b; c; d
현재 다음과 같이 메모장 ++을 사용합니다.
- 탭을 공백으로 변환
- 수동으로 데이터 정렬
- 열 모드를 사용하여 파이프 삽입
두 번째 단계는 가장 지루한 단계이며 적어도이 부분은 자동화되어 있습니다.
참고 : 작업 할 때 브라우저를 사용하고 때로는 텍스트 편집기가 함께 열려 있습니다. 효율적인 솔루션은 최소한의 노력이 필요합니다. 나는 사용할 수 있습니다 :
- 메모장 ++
- 정규식 찾기 / 바꾸기 지원 일반 텍스트 편집기
- 브라우저 콘솔에 입력 된 JavaScript
- 온라인 웹 서비스
- 명령 행의 PHP (
php -a
)
awk
스크립트입니다.
{{(⊃⍵)⍪⍉⍪↑¨↓⍉↑1↓⍵}s¨'⎕T'⎕T¨(s←1↓¨⊢⊂⍨⊢=⊃)¯1⌽⍵}
어, 작업 할 좋은만큼 보인다?)