$...$를 \(...\)로 변환하는 방법

$...$를 \(...\)로 변환하는 방법

그래서 따르면 $$ ... $$보다 \[ ... \]를 선호하는 이유는 무엇입니까?그리고 수학 모드에서 달러 기호보다 \( 및 \)를 선호합니까?\(...\)대신 $...$\[...\]대신을 사용해야 합니다 $$...$$.

하지만 이미 달러 기호를 약간 사용한 문서가 있다면 어떻게 될까요? 어떻게 변환하나요? 다음과 같은 이유로 간단한 찾기 및 바꾸기가 작동하지 않습니다.

  1. $$가 시작인지 끝인지는 중요하지 않습니다. 그리고
  2. 나는 본문에서 (통화를 나타내기 위해) 달러 기호를 사용합니다.

누구든지 이것에 대한 깔끔한 팁을 가지고 있습니까?

답변1

이는 사용하는 편집기와 제공하는 기능에 따라 많이 달라지므로 단일 답변이 있을 수 있을지 의심됩니다. 그러나 편집자가 정규식을 잘 지원한다면 이 작업은 꽤 쉬울 것입니다.

일치하는 방법은 다음과 같습니다.$...$

/\s\$(.|\n)+?\$/g

마찬가지로 다음과 일치합니다 $$...$$.

/\s\$\$(.|\n)+?\$\$/g

이는 달러 기호와 일치하지 않습니다. 왜냐하면 이스케이프되어야 \$하고 위 패턴에서는 달러 기호 앞에 공백 문자(공백, 탭 또는 개행 문자)가 필요하기 때문입니다. 이에 대한 멋진 시각화를 볼 수 있습니다.여기그리고여기각기.

편집기가 Perl의 플래그를 지원하는 경우 새 줄 에도 일치하도록 단순화 s할 수 있습니다 .(.|\n)+?.+?.

마지막으로 대체 항목과 함께 사용하면 다음과 같은 결과를 얻을 수 있습니다.

s/(\s)\$(.+?)\$/\1\(\2\)/sg

특정 문자는 정규 표현식의 특정 구현에 따라 달라지므로 이스케이프 처리하지 않을 것입니다. 특히 그룹 괄호에는 사용 중인 정규식 구현에 따라 대체 항목 의 , \(...\)및 백슬래시를 이스케이프해야 할 수도 있습니다.+?

명령줄에 있고 Perl이 있는 경우 다음 두 명령을 사용하면 됩니다.

perl -077pi.bak -e 's/(\s)\$\$(.+?)\$\$/\1\\[\2\\]/sg' document.tex
perl -077pi.bak -e 's/(\s)\$(.+?)\$/\1\\(\2\\)/sg' document.tex

참고하세요.~ 아니다파일의 시작 부분에서 무엇이든 일치합니다. 그러나 파일의 시작 부분이 일반적으로 주석이거나 최소한 \documentclass.

답변2

Single은 $인라인 수학에 적합하고 지원되는 구문이며 심지어 $$디스플레이 수학에도 대부분 괜찮습니다. 스타일은 좋지 않지만 대부분(을 사용하지 않는 경우 fleqn) 동일한 출력을 제공하므로 수식을 편집할 때 일반 편집의 일부로 \[..\]변경할 수 있습니다 . 정규 표현식 대체에 자신이 없다면 정규 표현식이 잘못되면 득보다 실이 더 많을 수 있는 문서 전체 편집을 긴급하게 수행할 필요가 없습니다. 그러니 앞으로 사용해 보세요. 하지만 이미 문서에 있는 것 때문에 잠을 자지 마세요 . :-)$$\[\[$$

관련 정보