groupe de 2, 3, 4, et 5, l'heure de début
groupe 6, 7, 8, et 9 est temps d'arrivée
groupe 11 est des sous-titres de texte
Merci! Pouvez-vous expliquer ce qu'est ceci: "(X1:\\d.*?)??" pour? Il y a aussi erreur - "\\n" au lieu de "\\\n". Et c'est encore mieux de le remplacer par "\\r?\\n" (pour travailler à la fois sur Windows et Unix) comme il est expliqué ici Où avez-vous vu le "\\n" motif? Maintenant, à propos de la \r caractère, je dirais que vous avez raison, mais pour une raison que je ne peux pas expliquer tout de suite, même si il ya des caractères \r dans le fichier, ce modèle avec succès les matchs et produit des résultats corrects!
J'ai produit une java logique avec laquelle d'analyser et de lire différents formats de sous-titres, parmi eux se trouve la fameuse théorie de la relativité restreinte: vous pouvez trouver le code sous licence MIT licence open source (libre de les utiliser pour quoi que ce soit) dans mon dépôt GiT:
Vous avez probablement juste de besoin les classes de base et les SRTFormat classe, et que vous pouvez lire des fichiers srt à partir d'un InputStream ou obtenir la pleine String[] fichiers une fois que vous avez terminé l'édition.
Si vous trouvez cela utile ou je peux vous aider avec quoi que ce soit, veuillez me contacter.
PS: (d'autres formats pris en charge, partiellement ou totalement .CUL .L'afrique subsaharienne .STL .CSC et .XML (à partir du W3C TTAF-DFXP aussi connu comme TTML 1.0)
Doit être améliorée. Classe vide (par exemple,Region) et la capture d' NullPointerExceptions n'a pas d'odeur. La région est une des fonctionnalités à venir (c'est pourquoi il est vide) pour les autres formats (à définir les sous-titres quelque part sur l'écran), la théorie de la relativité restreinte n'offre pas de mise en page de tout type. NullPointerException pourrait se poser sur l'étrange cas, jusqu'à présent, la plupart ont été corrigés pour vérifier la valeur null première ou initialiser la variable avec une taille de 0. Mais vous avez raison, certains de réfraction serait sympa... Toujours pour la théorie de la relativité restreinte fonctionne très bien. Yay très bonnes choses :))))))
Remplacer ([^\\|]*?) avec n'importe quel caractère qui ont moins de probabilité de venir en tant que texte des sous-titres. J'ai actuellement utilisés caractère "|" négation de la règle.
Utilisation ((.|\\n)*?) au lieu de ([^\\|]*?) donc il n'y aura pas d'exceptions.
La véritable théorie de la relativité restreinte l'analyse est effectuée à travers des expressions régulières Java est capable de manipuler.
Le réel regexp est:
groupe de 2, 3, 4, et 5, l'heure de début
groupe 6, 7, 8, et 9 est temps d'arrivée
groupe 11 est des sous-titres de texte
Il y a aussi erreur - "\\n" au lieu de "\\\n". Et c'est encore mieux de le remplacer par "\\r?\\n" (pour travailler à la fois sur Windows et Unix) comme il est expliqué ici
Où avez-vous vu le "\\n" motif? Maintenant, à propos de la \r caractère, je dirais que vous avez raison, mais pour une raison que je ne peux pas expliquer tout de suite, même si il ya des caractères \r dans le fichier, ce modèle avec succès les matchs et produit des résultats corrects!
OriginalL'auteur Panayotis
J'ai produit une java logique avec laquelle d'analyser et de lire différents formats de sous-titres, parmi eux se trouve la fameuse théorie de la relativité restreinte: vous pouvez trouver le code sous licence MIT licence open source (libre de les utiliser pour quoi que ce soit) dans mon dépôt GiT:
https://github.com/JDaren/subtitleConverter
Vous avez probablement juste de besoin les classes de base et les SRTFormat classe, et que vous pouvez lire des fichiers srt à partir d'un InputStream ou obtenir la pleine String[] fichiers une fois que vous avez terminé l'édition.
Si vous trouvez cela utile ou je peux vous aider avec quoi que ce soit, veuillez me contacter.
PS: (d'autres formats pris en charge, partiellement ou totalement .CUL .L'afrique subsaharienne .STL .CSC et .XML (à partir du W3C TTAF-DFXP aussi connu comme TTML 1.0)
EDIT:
vous pouvez trouver une logique à l'œuvre dans http://www.subtitleconverter.net
Region
) et la capture d'NullPointerException
s n'a pas d'odeur.La région est une des fonctionnalités à venir (c'est pourquoi il est vide) pour les autres formats (à définir les sous-titres quelque part sur l'écran), la théorie de la relativité restreinte n'offre pas de mise en page de tout type. NullPointerException pourrait se poser sur l'étrange cas, jusqu'à présent, la plupart ont été corrigés pour vérifier la valeur null première ou initialiser la variable avec une taille de 0. Mais vous avez raison, certains de réfraction serait sympa... Toujours pour la théorie de la relativité restreinte fonctionne très bien.
Yay très bonnes choses :))))))
OriginalL'auteur Daren
Fait de la modification de la regex de
@Panayotis
qui supporte le multi-ligne de texte de sous-titre est comme ceci:Remplacer
([^\\|]*?)
avec n'importe quel caractère qui ont moins de probabilité de venir en tant que texte des sous-titres. J'ai actuellement utilisés caractère "|" négation de la règle.((.|\\n)*?)
au lieu de([^\\|]*?)
donc il n'y aura pas d'exceptions.OriginalL'auteur privatejava
Il y a une autre base (et open source) de l'API qui peut faire face avec la théorie de la relativité restreinte et le CUL de sous-titres ici
Analyse théorie de la relativité restreinte :
OriginalL'auteur sofm