tvh 구성후 epg 까지 어렵게 구현 하셨지만 녹화 때문에 골치 아프신 분들이 있는것 같아 글을 써 봅니다. (아래 글 보니 생각나서요)
저는 아이들을 위해 주로 다큐를 녹화하고 있습니다.
그리고 정규식을 이용한 녹화에서는 정확히 원하는것만 녹화가 가능합니다.
예를 들어볼께요.
(이후 본문에서 초록색 글자는 정규식 칸에 넣을 글자입니다)
위 스샷에서는 다큐는 아니지만, 재방송과 본방이 같이 있어서 찍어봤습니다.
저는 재방송은 녹화를 안하고 싶습니다. 왜냐하면 재방송은 여러번 송출하기 때문에 계속 중복이 쌓이기 때문이죠.
위에서 본방과 재방의 차이가 보이시나요?
일단 재방송은 끝에 (재) 가 붙네요. 그렇다면, 쉽게 할수 있겠습니다.
정규식에 $ 기호가 있습니다. 달러 표시이긴 하지만, 정규식에서는 끝 부분을 말하는겁니다.
^는 처음을 말하고요.
위에 나온 궁금한 이야기 Y (재)를 정규식으로 표현하면
궁금한 이야기 Y \(재\)
가 되는데요
만약, 녹화할때 정규식에
궁금한 이야기
만 써 놓으면 재방송까지 같이 녹화 되겠죠.
정규식으로 녹화 할떄
궁금한 이야기 Y$
로 해 놓으면 궁금한 이야기 Y 는 녹화 되지만, 궁금한 이야기 Y (재)는 녹화 되지 않습니다.
하지만 정말 진짜로 궁금한 이야기 Y 라는 프로가 있다면 그것도 녹화 됩니다.
따라서 오로지 궁금한 이야기 Y만 녹화하고 싶다면
^궁금한 이야기 Y$
로 하시면 됩니다.
다음 예를 볼께요.
JTBC 스페셜 다큐멘터리를 녹화한다고 해볼께요.
비슷한 이름이 두종류 존재합니다.
저는 JTBC 스페셜 다큐멘터리 (xxxx회)
이걸 녹화하고 싶다고 할떄
정규식에
JTBC 스페셜 다큐멘터리 \(\d{1,}회\)
를 넣으면 JTBC 스페셜 다큐멘터리 (1회) 부터 JTBC 스페셜 다큐멘터리 (99999999999999999999999회) 도 녹화 되는거죠.
사실 그 전에 해당 다큐 프로그램이 끝나겠지만요.
정규식을 설명 드리자면, \d 는 숫자를 의미 합니다. 1자리의 숫자죠.
{1,} 는 바로 앞 1글자에 대해 1개 이상이라는 뜻 입니다. 즉, 1자리부터 수백만자리까지 표현할수 있지요.
\d{1,2} 로 해놓으면 1자리~2자리 입니다. 1~99 까지겠죠.
이런식으로 정규식을 응용할수 있습니다.
저는 이 JTBC 스페셜 다큐멘터리 (xxxx회) 중에서, 재방송은 제외하고 녹화한다고 하면
^JTBC 스페셜 다큐멘터리 \(\d{1,}회\)$
로 하면
JTBC 스페셜 다큐멘터리 (1460회), JTBC 스페셜 다큐멘터리 (1461회), JTBC 스페셜 다큐멘터리 (1462회) 등등이 녹화되고
JTBC 스페셜 다큐멘터리
JTBC 정말 스페셜 다큐멘터리
진짜 JTBC 스페셜 다큐멘터리
JTBC 스페셜 다큐멘터리 (1460회) (재)
등은 녹화되지 않게 할수 있는거에요.
정규식 참고할때 rubular.com 들어가면 내가 작성한게 맞는지 시험해볼수 있어서 좋습니다.
나머지는 autorec 탭에 들어가셔서 정규식 부분에 적당히 원하는 정규식 쓰시고 채널정도만 잡아주시면 epg 기반으로 녹화가 잘 되게 됩니다.
JTBC 스페셜 다큐멘터리 (xxxx회) 같은 경우에는 각 회마다 정규식을 넣으실 필요가 있는게 아니라
^JTBC 스페셜 다큐멘터리 \(\d{1,}회\)$
하나만 넣어놓으시면 방송 할때마다 계속 녹화가 되는거죠.
매번 검색해서 넣고.. 돌아서면 잊게된다는..ㅎㄷㄷ
notepad++에서는 앞의 숫자 한개 이상을 나타내고 싶을때는
\d+
이렇게 하는데
,로도 되는건가요? 아니면 정규식 표현이 다른건가요
+ 1개 이상
{n} 정확히 n회 반복
{n,} n회 이상
{n,m} n~m
제가 알고 있기론 위와 같습니다. 즉 +와 {1,}는 같은 표현이 맞아요