Пример #1
0
 def clean_hi(cls, line: Line) -> Line:
     """Clean hearing impaired."""
     line = line.sub(
         r"^([-‐\s<i>]+)?((\b[-A-Za-z.']+\s?#?\d?){1,2}(?!\.)([\[(][\w\s]*[\])])?:(?!\w)|[\[]+.*[\]:]+)(<\/?i>)?([\s])*",
         r"\1\5",
     )
     line = cls.clean_parentheses(line)
     return line
Пример #2
0
 def clean_dashes(line: Line) -> Line:
     return line.sub(r"^(<\/?i>)*([-‐]+)(\s+)?", r"\1- ")
Пример #3
0
 def fix_styles(line: Line) -> Line:
     """Remove leftover style tags"""
     return line.sub(r"<\/?i>(\s*)<\/?i>", r"\1")
Пример #4
0
 def fix_music(line: Line) -> Line:
     return line.sub(r"^#\s", "♪ ")
Пример #5
0
 def fix_quote(line: Line) -> Line:
     return line.sub(r"&quot;", '"')
Пример #6
0
 def fix_ampersand(line: Line) -> Line:
     return line.sub(r"&amp;", "&")
Пример #7
0
 def fix_hyphen(line: Line) -> Line:
     return line.sub(r"'’", "'")
Пример #8
0
 def fix_space_punctuation(line: Line) -> Line:
     line = line.sub(r"(?<!^-)(?<!\.{3})\s+([.,!?]+)",
                     r"\1")  # remove space before punctuation
     line = line.sub(r"([.,!?]+)\s{2,}(?!$)",
                     r"\1 ")  # fix multiple spaces after punctuation
     return line
Пример #9
0
 def trim_whitespace(line: Line) -> Line:
     """Trim multiple spaces between words, also if there are style tags in between"""
     return line.sub(r"\s+(<\/?i>)*\s*", r" \1").strip()
Пример #10
0
 def fix_spaces(line: Line) -> Line:
     """Add missing spaces between sentences."""
     return line.sub(r"\b([.?!]+)([A-Z][a-z])", r"\1 \2")
Пример #11
0
 def clean_parentheses(line: Line) -> Line:
     """Clean parentheses ()[]."""
     return line.sub(r"[(\[*].*?[)\]*:]+", "")