자릿수가 포함 된 14 자 라인이 있습니다. 특정 위치 (예 : 4 번째 위치)에 어떻게 문자를 삽입합니까? 그래서, 만약 내가 이런 식으로 문자열 : xxxxxxxxxxxxxx 어떻게 이런 식으로 변경합니까 : xxxx-xx-xxxxxxxx? (x = 숫자)sed 문자열에 대시를 삽입하십시오.
고마워요! irek
자릿수가 포함 된 14 자 라인이 있습니다. 특정 위치 (예 : 4 번째 위치)에 어떻게 문자를 삽입합니까? 그래서, 만약 내가 이런 식으로 문자열 : xxxxxxxxxxxxxx 어떻게 이런 식으로 변경합니까 : xxxx-xx-xxxxxxxx? (x = 숫자)sed 문자열에 대시를 삽입하십시오.
고마워요! irek
당신의 라인이 만이 숫자를 포함하는 경우, 그룹화 할 수 있습니다 그룹의 처음 네 문자 :
\(....\)\(..\)
: 다른 그룹의
\(....\)
다음과 같은 두 사람 그런 다음 첫 번째 그룹 (\1
), 대시, 두 번째 그룹에 대한 역 참조 (\2
) 및 다른 대시 (
\1-\2-
는 그 결과 답변에 대한
$ echo 12345678900000 | sed 's/\(....\)\(..\)/\1-\2-/'
1234-56-78900000
감사 brandizzi은은을 대체하기 위해 약간 다른 방법
sed 's/^\(.\{4\}\)\(.\{2\}\)/\1-\2-/'
4 2 일을 사용하여 일을 내 일을 얻기 위해 나에게 도움이 4 번째 문자 다음에 2 번째 문자를 대시로 사용하십시오.
그래서 xxxxxxxx는 xxxx-xx-xx가됩니다