Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | - Why don't you do that? |
00:00:02,001 | 00:00:03,000 | - I don't know! |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:03,000 |
- Why don't you do that? - I don't know! |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | But not exactly because... |
00:00:02,001 | 00:00:03,000 | ...what I want is clear. |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | But not exactly because |
00:00:02,001 | 00:00:03,000 | what I want is clear. |
Show Time | Hide Time | Text |
00:00:00,250 | 00:00:01,350 | This is the text 1 !!!!!!! |
00:00:00,780 | 00:00:02,150 | ¿?!¡ This is the text 2 |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:01,010 | Come on, let's book. |
00:00:01,010 | 00:00:02,000 | Come on, let's book. |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | Come on, let's book. |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | MAN:|She feel the same about you? |
00:00:03,000 | 00:00:04,000 | JERRY:|I don't know. |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | She feel the same about you? |
00:00:03,000 | 00:00:04,000 | I don't know. |
Show Time | Hide Time | Text | |
00:00:01,000 | 00:00:02,000 | - [Boy] | You want me to kill him for you? |
00:00:03,000 | 00:00:04,000 | Yeah. Would you? | |
00:00:05,000 | 00:00:06,000 | [Shutter Whirring, | Clicking Off] |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | You want me to kill him for you? |
00:00:03,000 | 00:00:04,000 | Yeah. Would you? |
Show Time | Hide Time | Text |
00:00:00,250 | 00:00:01,450 | This is text 1 |
00:00:01,150 | 00:00:02,150 | This is text 2 |
Show Time | Hide Time | Text |
00:00:00,250 | 00:00:01,200 | This is the text 1 |
00:00:01,201 | 00:00:02,150 | This is the text 2 |
Show Time | Hide Time | Text |
00:00:00,250 | 00:00:01,450 | This is the text 1. More than four extra characters. |
00:00:01,451 | 00:00:02,150 | This is the text 2 |
Show Time | Hide Time | Text |
00:00:00,250 | 00:00:01,450 | This is the text 1 |
00:00:01,451 | 00:00:02,150 | This is the text 2. More than four extra characters. |
Show Time | Hide Time | Text |
00:00:02,000 | 00:00:01,000 | This is the text |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | This is the text |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | Yeah.... Should taste it..... |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | Yeah... Should taste it... |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | Do it, now!!!!!!!!!!!!!!!!!!!!!! |
00:00:01,000 | 00:00:02,000 | Do it, now! |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | This is subtitle 1 |
00:00:02,000 | 00:00:03,000 | This is subtitle 2 |
Show Time | Hide Time | Text |
00:00:01,000 | 00:00:02,000 | This is subtitle 1 |
00:00:02,001 | 00:00:03,000 | This is subtitle 2 |
<SWOCR WordChars="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_ñÑáéíóúÁÉÍÓÚäëïöü"> <!-- The comments are set just like in HTML --> <ERROR Find="[A-ZÁ-Ú](l)" ReplaceBy="I"> <ERROR Find="[a-zá-ú](I)" ReplaceBy="l"> <ERROR Find="\d( :)" ReplaceBy=":"> <ERROR UseREOnlyToFind="False" Find=",{2,}" ReplaceBy="..."> </SWOCR>WordChars represents all the characters that can form a word in your language. The default is the string shown above. If this parameter is not passed, the default will be used. These are some of the most common OCR errors in English language. In OCR Engines, "l" (lowercase "L") and "I" (uppercase "i") look almost identical and they are often misplaced. Another very common error is the inclusion of spaces before colon. In the short example above, Subtitle Workshop will use regular expressions to search for the errors. If you don't need to use regular expressions, you should take a look at the parameters that define how you want the search to be executed:
<ERROR UseREOnlyToFind="True" Find="[a-z]at" ReplaceBy="dog">Applied to "The name of my cat is Max" will return "The name of my dog is Max", but
<ERROR UseREOnlyToFind="False" Find="[a-z](at)" ReplaceBy="dog">Applied to "The name of my cat is Max" will return "The name of my cdog is Max".
<ERROR UseRE="False" Find="DOG" WholeWord="True" PreserveCase="True" ReplaceBy="CAT">As it is not case sensitive, Subtitle Workshop could find the text "Dog", not only the text "DOG". When replacing "Dog" with "CAT", it will copy the case of the text it found, so it will replace "Dog" with "Cat", not with "CAT".
foobar | matches string 'foobar' |
\^FooBarPtr | matches '^FooBarPtr' |
\xnn | char with hex code nn |
\x{nnnn} | char with hex code nnnn (one byte for plain text and two bytes for Unicode) |
\t | tab (HT/TAB), same as \x09 |
\n | newline (NL/LF), same as \x0a |
\r | car.return (CR), same as \x0d |
\f | form feed (FF), same as \x0c |
\a | alarm (bell) (BEL), same as \x07 |
\e | escape (ESC), same as \x1b |
foo\x20bar | matches 'foo bar' (note space in the middle) |
\tfoobar | matches 'foobar' predefined by tab |
foob[aeiou]r | finds strings 'foobar', 'foober' etc. but not 'foobbr', 'foobcr' etc. |
foob[^aeiou]r | find strings 'foobbr', 'foobcr' etc. but not 'foobar', 'foober' etc. |
[-az] | matches 'a', 'z' and '-' |
[az-] | matches 'a', 'z' and '-' |
[a\-z] | matches 'a', 'z' and '-' |
[a-z] | matches all twenty six small characters from 'a' to 'z' |
[\n-\x0D] | matches any of #10, #11, #12, #13. |
[\d-t] | matches any digit, '-' or 't'. |
[]-a] | matches any char from ']'..'a'. |
^ | start of line |
$ | end of line |
\A | start of text |
\Z | end of text |
. | any character in line |
^foobar | matches string 'foobar', only if it's at the beginning of line |
foobar$ | matches string 'foobar' only if it's at the end of line |
^foobar$ | matches string 'foobar' only if it's the only string in line |
foob.r | matches strings like 'foobar', 'foobbr', 'foob1r' and so on |
\w | an alphanumeric character (including "_") |
\W | a non-alphanumeric |
\d | a numeric character |
\D | a non-numeric |
\s | any space (same as [ \t\n\r\f]) |
\S | a non space |
foob\dr | matches strings like 'foob1r', ''foob6r' and so on, but not 'foobar', 'foobbr' and so on |
foob[\w\s]r | matches strings like 'foobar', 'foob r', 'foobbr' and so on but not 'foob1r', 'foob=r' and so on |
\b | Match a word boundary |
\B | Match a non-(word boundary) |
* | zero or more ("greedy"), similar to {0,} |
+ | one or more ("greedy"), similar to {1,} |
? | zero or one ("greedy"), similar to {0,1} |
{n} | exactly n times ("greedy") |
{n,} | at least n times ("greedy") |
{n,m} | at least n but not more than m times ("greedy") |
*? | zero or more ("non-greedy"), similar to {0,}? |
+? | one or more ("non-greedy"), similar to {1,}? |
?? | zero or one ("non-greedy"), similar to {0,1}? |
{n}? | exactly n times ("non-greedy") |
{n,}? | at least n times ("non-greedy") |
{n,m}? | at least n but not more than m times ("non-greedy") |
foob.*r | matches strings like 'foobar', 'foobalkjdflkj9r' and so on, and 'foobr' |
foob.+r | matches strings like 'foobar', 'foobalkjdflkj9r' and so on, but not 'foobr' |
foob.?r | matches strings like 'foobar', 'foobbr' and so on, and 'foobr' but not 'foobalkj9r' and so on |
fooba{2}r | matches the string 'foobaar' |
fooba{2,}r | matches strings like 'foobaar', 'foobaaar', 'foobaaaar' etc. |
fooba{2,3}r | matches 'foobaar' and 'foobaaar', but not 'foobaaaar' etc. |
foo(bar|foo) | matches strings 'foobar' or 'foofoo'. |
(foobar){8,10} | matches strings which contain 8, 9 or 10 instances of the 'foobar' |
foob([0-9]|a+)r | matches 'foob0r', 'foob1r', 'foobar', 'foobaar', 'foobaaar' etc. |
(.)\1+ | matches any repeated character, e.g. 'aaaa', 'cc', etc. |
(.+)\1+ | matches any repeated character or any repeated sequence of characters, like 'abab', '123123', etc. |
(['"]?)(\d+)\1 | matches a number, or a number between quotes, e.g. "13" (in double quotes), or '4' (in single quotes) or 77 (without quotes) or "56' (between a double quote and a single quote) etc |
(['"])(\d+)\1 | matches a number between quotes (only single or only double), e.g. "13" (in double quotes), or '4' (in single quotes), but not "56' (between a double quote and a single quote) |
i | Do case-insensitive pattern matching (using installed in you system locale settings), see also InvertCase. |
m | Treat string as multiple lines. That is, change '^' and '$' from matching at only the very start or end of the string to the start or end of any line anywhere within the string, see also Line separators. |
s | Treat string as single line. That is, change '.' to match any character whatsoever, even line separators (see also Line separators), which it normally would not match. |
g | Non standard modifier. Switching it Off, You'll switch all following operators into non-greedy mode (by default this modifier is On). So, if modifier /g is Off, then '+' works as '+?', '*' as '*?', and so on |
x | Extend your pattern's legibility by permitting whitespace and comments (see explanation below). |
r | Non-standard modifier. If set, then range а-я additionally includes the Russian letter 'ё', А-Я additionally includes 'Ё', and а-Я includes all Russian symbols. Sorry for foreign users, but it's set by default. If you want to switch if off by default, set False to global variable RegExprModifierR. |
( (abc) # comment 1 | # You can use spaces to format r.e. - TRegExpr ignores it (efg) # comment 2 )This also means that if you want real whitespace or # characters in the pattern (outside a character class, where they are unaffected by /x), you'll either have to escape them or encode them using octal or hex escapes. Taken together, these features can go a long way towards making regular expressions text more readable.
(?i)Saint-Petersburg | matches 'Saint-petersburg', 'Saint-Petersburg', 'saint-petersburg', 'SAINT-PETERSBURG', 'SaInt-pETeRsBURG', etc. |
(?i)Saint-(?-i)Petersburg | matches 'Saint-Petersburg', 'saint-Petersburg', 'SAINT-Petersburg', 'sAInt-Petersburg', etc., but not 'Saint-petersburg', 'Saint-PETERSBURG', 'Saint-pETersBurG', etc. |
(?i)(Saint-)?Petersburg | matches 'Saint-petersburg', 'Saint-Petersburg', 'saint-petersburg', 'SAINT-PETERSBURG', 'SaInt-pETeRsBURG', etc., as well as 'Petersburg', 'petersburg', 'PETERSBURG', 'PetERSbuRg', etc. |
((?i)Saint-)?Petersburg | matches 'Saint-Petersburg', 'saint-Petersburg', 'SAINT-Petersburg', 'sAInt-Petersburg', etc., but not 'Saint-petersburg', 'Saint-PETERSBURG', 'Saint-pETersBurG', etc. |