Gå till huvudinnehållet
SubtitleMatrix

Ta bort tidsstämplar i undertexten

Text och formateringErsätt med reguljärt uttryck
Eller klistra in undertexttext

Inställningar

Ett reguljärt uttryck som matchas mot texten i varje textblock. Varje träff ersätts. De två sidorna i det här avsnittet delar fältet: den ena öppnar det tomt för ett mönster du redan har, den andra börjar med ett mönster du kan redigera åt båda hållen.

Vad varje träff blir. Lämna tomt för att ta bort varje träff. Till skillnad från sidan för bokstavlig sök och ersätt är ett dollartecken speciellt här: $1 står för den första gruppen inom parentes i träffen, $& för hela träffen och $$ för ett bokstavligt dollartecken.

Bokstäverna som mönstret kompileras med. g och u är på som standard: u gör att mönstret läser texten ett tecken i taget i stället för en kodenhet i taget, vilket är det som gör att \p{L} och liknande betyder det de säger. Lägg till i för att bortse från skiftläge, m för radankare, s för att låta en punkt matcha en radbrytning. Töm fältet för att kompilera helt utan flaggor. Varje annan bokstav avvisas i stället för att ignoreras, eftersom ett mönster som körs med flaggor du inte bad om är ett mönster som tyst betyder något annat.

Vilken bildfrekvens tiderna räknas i. På formatsidorna är det här vad MicroDVD behöver, eftersom formatet lagrar tider som bildnummer. På bildfrekvenssidorna är det den frekvens som filens tider byggdes för – den version som undertexterna gjordes för – och sidans andra fält tar frekvensen för den video du ska använda dem med. 23,976, 24, 25, 29,97, 30, 50, 59,94 och 60 är de vanligaste. Blir det fel förskjuts hela tidslinjen, och på bildfrekvenssidorna förskjuts den med ett förhållande i stället för med ett fast belopp.

Ta bort tidsstämplar som står inne i själva texten. En transkription som exporterats från ett videoprogram har ofta varje rad inledd med den tid då repliken sades, till exempel [00:00:12], och den stämpeln ska inte stå kvar när texten görs om till undertext.

Sidan använder ett färdigt mönster som matchar en stämpel med timmar, minuter och sekunder, valfria millisekunder och en valfri omslutande parentes av typen hakparentes, rund parentes eller klammer. Även mellanslaget efter stämpeln tas bort, så raden börjar direkt med sitt innehåll.

Det som gör mönstret användbart är två skyddsregler: tecknet före och tecknet efter stämpeln får inte vara en siffra eller ett kolon. Därför lämnas en SMPTE-tidskod som 12:34:56:07 orörd, liksom ett klock slag som 10:30 — det senare har bara två delar och är ingen stämpel med sekunder.

Ett textblock där hela texten var en stämpel blir tomt, men textblocket finns kvar med sina tider. Sidan tar bort text, inte tid: en lucka i tidslinjen är ett annat problem, och ett tomt textblock är lätt att hitta med kvalitetsverktygen efteråt. Mönstret kan redigeras om din källa har ett annat format.

Exempel

En transkription med tiden för varje rad

Indata

[00:00:01] We should go.
[00:00:05] The train leaves at 10:30.

Resultat

We should go.
The train leaves at 10:30.

Båda stämplarna försvinner tillsammans med parenteserna och mellanslaget efter, så raderna börjar direkt med texten. Klocktiden 10:30 står kvar, eftersom den har två delar och ingen sekund och därför inte är en stämpel.

Stämplar inne i en riktig undertextfil

Indata

1
00:00:01,000 --> 00:00:04,000
[00:00:12] (phone rings)

2
00:00:05,000 --> 00:00:08,000
(00:01:02.500) So I said yes.

Resultat

1
00:00:01,000 --> 00:00:04,000
(phone rings)

2
00:00:05,000 --> 00:00:08,000
So I said yes.

Här finns stämpeln både i hakparentes och i rund parentes, en gång med millisekunder, och alla tre formerna tas bort. Ljudtexten (phone rings) och meningen So I said yes. börjar nu vid radens vänsterkant. Textblockens egna tider överst är orörda — det är undertextens tidslinje, och sidan rör bara det som syns på skärmen.

Allt som ser ut som en tidsstämpel men inte är det

Indata

1
00:00:01,000 --> 00:00:04,000
SMPTE 12:34:56:07 and a ratio of 1:2:3 here.

2
00:00:05,000 --> 00:00:08,000
Call me at 10:30.

Resultat

1
00:00:01,000 --> 00:00:04,000
SMPTE 12:34:56:07 and a ratio of 1:2:3 here.

2
00:00:05,000 --> 00:00:08,000
Call me at 10:30.

Filen kommer tillbaka byte för byte. Fyrparts tidskoden, förhållandet 1:2:3 och klocktiden 10:30 är alla skyddade av regeln att tecknet före och efter inte får vara en siffra eller ett kolon. Utan skyddet hade matcharen kunnat börja mitt inuti tidskoden och lämna en söndertrasad rad.

Vanliga frågor

Vilka stämpelformer tas bort?

En stämpel med timmar, minuter och sekunder, valfria millisekunder och en valfri omslutande parentes: [00:00:12], (00:01:02.500) eller {00:01:02,5}. Även mellanslaget efter stämpeln tas bort. En stämpel utan parentes tas också bort, eftersom parentesen är valfri i mönstret.

Varför lämnas 12:34:56:07 orörd?

Därför att tecknet före och efter en träff inte får vara en siffra eller ett kolon. Fyrpartskoden har ett kolon efter sekunderna, så mönstret ser att det är en del av något längre och rör den inte. Utan den regeln hade matcharen kunnat börja tre tecken in i koden och lämna en söndertrasad rad.

Tas klocktider som 10:30 bort?

Nej. Mönstret kräver timmar, minuter och sekunder, alltså två kolon, medan 10:30 bara har ett. Det är avsiktligt: en tid på dygnet är innehåll, inte en stämpel, och att ta bort den skulle förstöra repliken. Klocktider med sekunder, som 10:30:15, kan däremot matchas om de står för sig.

Vad händer om hela texten i ett textblock var en stämpel?

Stämpeln tas bort och textblocket blir tomt, men det finns kvar med sina tider. Sidan tar bort text, inte tid — en lucka i tidslinjen är ett annat problem, och den som vill städa bort tomma textblock kan göra det med kvalitetsverktygen efteråt. Att ta bort textblocket här skulle ändra tidslinjen utan att du bad om det.

Kan jag ändra mönstret?

Ja, fältet är redigerbart och förifyllt med standardmönstret. Ändra det om din källa använder ett annat stämpelformat, men behåll gärna skyddsreglerna på båda sidor om du inte är säker på att ingen längre tidskod finns i texten. Ett trasigt mönster ger ett besked i stället för att köras.

Rör sidan textblockens egna tider?

Nej. De tider som står överst i varje textblock är undertextens tidslinje och rörs inte. Sidan arbetar bara på texten som syns på skärmen, alltså den del som kan innehålla en stämpel. Start- och sluttider, ordning och radbrytningar är desamma efter körningen.

Tas tidsstämplar bort även ur ASS-filens textfält?

Ja. Sidan kör mönstret på varje rad oavsett format, så en stämpel i en ASS-fil eller i en VTT-fil försvinner på samma sätt som i SRT. Tiderna i filens egen syntax rörs inte; det är bara text som ser ut som en stämpel som tas bort.

Relaterade verktyg