Erkennen Sie mithilfe von Regex SRT-Blöcke, die genau einen Bindestrich (-) enthaltenPhp

PHP-Programmierer chatten hier
Anonymous
 Erkennen Sie mithilfe von Regex SRT-Blöcke, die genau einen Bindestrich (-) enthalten

Post by Anonymous »

Ich arbeite mit .srt-Untertiteldateien in PHP und benötige einen regulären Ausdruck, der Blöcke findet, die genau einen Bindestrich enthalten (es sind normale Bindestriche (-, keine Minuszeichen)) und am Anfang einer Zeile beginnt.
Die Bedingungen sind:
Wenn ein Block 0 Bindestriche hat, sollte er NICHT übereinstimmen.
Wenn ein Block 2 oder mehr Bindestriche hat, sollte er NICHT übereinstimmen übereinstimmen.
Nur Blöcke, die genau einen Bindestrich irgendwo im Block enthalten, sollten übereinstimmen.
Beispieleingabe:

Code: Select all

5
00:00:32,393 --> 00:00:34,639
And a profile shot in this direction.

13
00:01:04,246 --> 00:01:07,312
- Would you like...
- That would be...

215
00:01:04,246 --> 00:01:07,312
Should not match-in the middle

621
00:42:26,920 --> 00:42:30,150
- Test X2, take one.

Erwartetes Verhalten:
Blocknummer 5 → keine Übereinstimmung (0 Bindestriche)
Blocknummer 13 → keine Übereinstimmung (2 Zeilen beginnen jeweils mit einem Bindestrich)
Blocknummer 215 → keine Übereinstimmung (Sollte am Anfang der Zeile beginnen)
Blocknummer 621 ✅ → sollte übereinstimmen (genau 1 Bindestrich)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post