1
을 변경하여 주어진 C 함수에 대한 모든 호출을 으로 바꾸려면 폴더의 모든 파일에 영향을주는 bash 스크립트를 작성하고 있습니다. 여기 현재 통화 내가 얻기 위해 원하는 모습, 그리고 무엇 : 나는 다음 찾기/SED 명령을 사용C 함수 호출의 전체 인수 부분을 바꾸는 방법은 무엇입니까?
myfunc(foo) ----> myfunc(foo, foo+1)
을하며 작업을 수행합니다
find . -name "*" -print | xargs sed -i 's/myfunc\([^)]*)\)/myfunc((\1),(\1)+1)/g'
을하지만 문제는 때 발생
sqrt(myfunc((foo+foo)*bar));
뭐 : 나는 다음과 같은 명령처럼 괄호를을 포함 지침/인수 처리해야 첫 번째 닫는 괄호 (예 : foo
후 하나)이되지 않습니다 myfunc
인수의 끝으로 해석됩니다 ... 저는 정규 표현식을 얻을 수있는 방법
(또는 다른 명령) 캡처 및 교체 (foo+foo)*bar
,의 즉, 정확히 내용 올바른 수준의 괄호, 괄호 수준의 수는 어떻습니까?
http://stackoverflow.com/questions/133601/can-regular-expressions-be-used-to-match-nested-patterns –