캐럿을 제거하고 호출기 번호에 괄호를 추가하세요.

캐럿을 제거하고 호출기 번호에 괄호를 추가하세요.

나는 이런 문자열을 가지고있다

NE234GJKLKU,*9^789098
NE345HJsdfe,*1^534656
YBKJNJKHBKK,*1^987654
UTGHNKOIUYO,*1^123421
ERTYUIJHGLK,*1^456666

나는 ~가되고 싶다:

NE234GJKLKU,*(978)-9098
NE345HJsdfe,*(153)-4656
YBKJNJKHBKK,*(198)-7654
UTGHNKOIUYO,*(112)-3421
ERTYUIJHGLK,*(145)-6666

어떤 제안이 있으십니까?

답변1

노력하다sed

sed -r -e 's/\^//g;s/^.{13}/&(/;s/^.{17}/&)-/' file

NE234GJKLKU,*(978)-9098
NE345HJsdfe,*(153)-4656
YBKJNJKHBKK,*(198)-7654
UTGHNKOIUYO,*(112)-3421
ERTYUIJHGLK,*(145)-6666

답변2

나는 이것이 할 것이라고 생각합니다 :

sed -E 's/(.)\^(..)/(\1\2)-/' file

답변3

또 다른 sed해결책:

$ sed 's,*,*(,g' FILE | sed -E 's,([0-9])\^([b0-9])([0-9]),\1\2\3)-,g'
NE234GJKLKU,*(978)-9098
NE345HJsdfe,*(153)-4656
YBKJNJKHBKK,*(198)-7654
UTGHNKOIUYO,*(112)-3421
ERTYUIJHGLK,*(145)-6666

하나의 선:

$ sed -E 's,\*,*(,g;s,([0-9])\^([b0-9])([0-9]),\1\2\3)-,g' FILE
NE234GJKLKU,*(978)-9098
NE345HJsdfe,*(153)-4656
YBKJNJKHBKK,*(198)-7654
UTGHNKOIUYO,*(112)-3421
ERTYUIJHGLK,*(145)-6666

관련 정보