sub_parser_regex.go 926 B

1234567891011121314151617181920212223
  1. package sub_parser
  2. import "regexp"
  3. const (
  4. // 匹配 ass 文件中的 Style 变量
  5. regString4Style = `(?m)^Style:\s*(\w+),`
  6. )
  7. // ReMatchBrace 匹配花括号中的内容
  8. var ReMatchBrace = regexp.MustCompile(`(?m)((?i){[^}]*})`)
  9. var ReMatchBracket = regexp.MustCompile(`(?m)((?i)\[[^]]*\])`)
  10. var ReCutDoubleLanguage = regexp.MustCompile(`(?i)(.*)\\N(.*)`)
  11. // 字幕文件对话的每一行
  12. // regStringASS = `Dialogue: [^,.]*[0-9]*,([1-9]?[0-9]*:[0-9]*:[0-9]*.[0-9]*),([1-9]?[0-9]*:[0-9]*:[0-9]*.[0-9]*),[^,.]*,[^,.]*,[0-9]*,[0-9]*,[0-9]*,[^,.]*,(.*)`
  13. const regStringASS = `Dialogue: [^,.]*[0-9]*,([1-9]?[0-9]*:[0-9]*:[0-9]*.[0-9]*),([1-9]?[0-9]*:[0-9]*:[0-9]*.[0-9]*),([^,.]*),[^,.]*,[0-9]*,[0-9]*,[0-9]*,[^,.]*,(.*)`
  14. const regStringSRT = `(\d+)\n([\d:,]+)\s+-{2}\>\s+([\d:,]+)\n([\s\S]*?(\n{2}|$))`
  15. var ReMatchDialogueSRT = regexp.MustCompile(regStringSRT)
  16. var ReMatchDialogueASS = regexp.MustCompile(regStringASS)