색인을 만들기 위해 여러 파일 latex
에서 몇 가지 단어를 검색하고 있습니다. 이 프로세스는 단어를 분리할 수 있는 위치를 나타내는 latex
임의의 하이픈 명령으로 인해 복잡해집니다 . 이것을 내 검색에 포함시키고 싶지만 지금까지 성공하지 못했습니다. 예를 들어, 모두 일치하는 표현식이 필요합니다.\-
latex
pādapracāra
pāda\-pracāra
pā\-da\-pra\-cā\-ra
또는 동일한 단어의 하이픈으로 연결된 다른 인스턴스입니다.
라텍스 명령 시작 부분에서 백슬래시를 일치시키려면 $ grep \\\\mycommand
*tex`와 같이 4개의 백슬래시를 입력해야 한다는 것을 알고 있습니다.
나는 vim
이와 같은 표현식을 검색할 수 있으므로 /pā\(\\-\)*da\(\\-\)*pra\(\\-\)*cāra
grep에서 비슷한 것일 것이라고 생각했습니다 grep pā\(\\\\-\)\?da *tex
(등등하지만 이것은 이미 아무것도 일치하지 않습니다).
답변1
나는 "grep"에게 하이픈을 무시하도록 지시할 수 없다고 생각합니다.
먼저 "sed"를 통해 필터링하는 것은 어떻습니까?
echo 'pa\\-da\\-pra\\-ca\\-bra' | sed -e s'/\\-//g'
패턴 일치를 위해 다른 표현식을 사용할 수 있습니다(사용자가 제안한 대로).카스):
echo 'pa\\-da\\-pra\\-ca\\-bra' | sed -n -e s'/\\-//g' -e '/pada/p'
답변2
$ grep -Ei 'pā(\\-)?da(\\-)?pra(\\-)?cā(\\-)?ra' *tex
내가 필요한 것을 하세요.
답변3
Bash를 통해 LaTeX 문서를 편집하는 것은 올바른 방법이 아니지만 원하는 경우 여기에서 수행하십시오.
grep -Ee "$(echo "padapracara" | sed "s/\B/(\\\\\\\\-)?/g")"