mm/dd에서 처음 나타나는 0을 제거하고 싶습니다. 예를 09/09/15
들어 9/9/15
.
사용해 보았 echo 09/10/15 | sed 's/^.//'
으나 와 유사한 결과가 나타납니다 9/09/15
. 어떻게 해야 합니까?
답변1
echo 01/01/2005 | sed 's=\(^\|/\)0=\1=g'
0 앞에 줄의 시작 부분이나 /가 오면 줄의 시작 부분으로 대체됩니다(예: 없음 또는 /).
답변2
0
내가 올바르게 이해했다면 날짜 문자열에서 모든 선행 s를 제거 하고 싶습니다 . 그렇다면 다음을 시도해 보십시오.
sed 's/0\([1-9]\)/\1/g'
이는 a 0
다음에 1에서 9 사이의 숫자가 오고, 괄호는 숫자를 나타냅니다. 그런 다음 전체 패턴을 일치하는 >0 숫자( \1
)로 바꿉니다.
답변3
sed 's/^/ /;s/\([^0-9.]\)0*\([1-9]\)/\1\2/g;s/.//' <infile >outfile
...한 줄에 0이 아닌 숫자가 하나 이상 포함된 모든 숫자 문자 그룹에서 선행 0을 모두 제거합니다.