가 나는 수치로 나오지도 명령으로 변환 할이사용
SKI
SKII
SKIII
SKIV
SKV
SKVI
SKVII
같은 텍스트 파일 형식이 아라비아 숫자를 로마 숫자로 변환 나오지. 너 나 좀 도와 줄 수있어?
SK1
SK2
SK3
SK4
SK5
SK6
SK7
감사합니다.
가 나는 수치로 나오지도 명령으로 변환 할이사용
SKI
SKII
SKIII
SKIV
SKV
SKVI
SKVII
같은 텍스트 파일 형식이 아라비아 숫자를 로마 숫자로 변환 나오지. 너 나 좀 도와 줄 수있어?
SK1
SK2
SK3
SK4
SK5
SK6
SK7
감사합니다.
그렇게 할 사소한 방법은 없습니다. 무의미한 힘과 약간의주의가 필요합니다 :
sed -e 's/SKIII/SK3/' \
-e 's/SKII/SK2/' \
-e 's/SKIV/SK4/' \
-e 's/SKVIII/SK8/' \
-e 's/SKVII/SK7/' \
-e 's/SKVI/SK6/' \
-e 's/SKV/SK5/' \
-e 's/SKI/SK1/' "[email protected]"
더 긴 시퀀스는 일반적으로 더 짧은 시퀀스 앞에 와야합니다. 그리고 이것은 1-8을 다루기 만합니다; 그것을 일반화하는 것은 겸손하게 어렵다.
는 사실 숫자는 내가 해결할 수있는 방법 1 29까지 필요합니까? 같은 방법?
SK 접두어를 무시한 다음 약간주의해서 29 개의 별도 표현 -e
을 사용할 필요는 없습니다. 물론 그래도 가능합니다. 이 스크립트는 39 (31 일 테스트, 한 달에 최대 일수)로 이동합니다. 99에 도달하는 데 필요한 확장은 상당히 명백합니다. (13 more -e
표현이라고 생각합니다.) 0을 포함하는 숫자에 대한 특별한 경우 처리에 유의하십시오.
sed \
-e 's/IX/9/' \
-e 's/XXX$/30/' \
-e 's/XXX/3/' \
-e 's/XX$/20/' \
-e 's/XX/2/' \
-e 's/X$/10/' \
-e 's/X/1/' \
-e 's/VIII/8/' \
-e 's/VII/7/' \
-e 's/III/3/' \
-e 's/II/2/' \
-e 's/IV/4/' \
-e 's/VI/6/' \
-e 's/V/5/' \
-e 's/I/1/' "[email protected]"
쓰기 (/ 표절 도둑질) 작은 로마 숫자 변환 – KevinDTimm
나오지 없음 코드,하지만 여기에 다른 예를 많이 : http://rosettacode.org/wiki/Roman_numerals/Decode –