2013-04-17 11 views
0

일부 텍스트 입력에서 sed find를 사용하여 간단한 SVG 다이어그램을 생성합니다. 그러나 좀 더 정교한 찾기 및 바꾸기 연산이 필요합니다. 특정 수학 함수 X Y 및 Y 값을 변경하려면을 사용하십시오.간단한 연산을 수행 할 함수 찾기 및 바꾸기?

예. 나는 0.5 또는 0.2 0 때문에 나는이, 그것이 SVG에서 변환 작업을 달성 할 수없는 일을하는 방법의

의 요인에 의해 모든 Y 값을 곱해야합니다. *

난 그냥 필요 예를 들어 (sed 말하기)의 모든 인스턴스를 찾고 \1의 수학적 결과에 내가 선택한 상수를 곱하면됩니다.

답변

0

간단한 펄 스크립트를 작성할 수 있습니다. $ factor를 결정하는 것은 확실하지 않지만 적어도 실행에 도움이됩니다.

#! /usr/bin/perl 
my $factor=0.5; 
while(my $line=<>) { 
    if ($line =~ /([0-9.]*)VERT/) { 
     my $num = $factor * $1; 
     $line =~ s/([0-9.]*)VERT/${num}VERT/; 
    } 
    print $line; 
} 

사용법 : ./scriptname.pl <file_to_process.txt;

0
perl -ape 's/[0-9.]*(?=VERT)/$& * .5/e' file 

희망이 +

를 작동