devo stringhe di ingresso come sottoScegliere la corrispondenza esatta cifra da una stringa
1) ISBN_9781338034424_001_S_r1.mp3
2) 001_Ch001_987373737.mp3
3) Questa è la prova 001 Chap01.mp3
4) Anger_Cha01_001.mp3
e sto usando qui sotto regex per raccogliere "001" in gruppo tracknumber
(?:(?<TrackNumber>\d{3})|(?<Revision>r\d{1}))(?![a-zA-Z])
Tuttavia, quanto sopra anche raccogliendo "978", "133", "803" e così via nel gruppo TrackNumber (esempi 1 e 2).
Come modificare la regex precedente per selezionare solo "001" in TrackNumber?
-Alan-
È il vostro modello include sempre con '_'? Forse hai bisogno di 'Split' con quel personaggio e prendere il terzo elemento di esso? –
Può avere spazi qualche volta –
'(? :(? \ d {3}) _ [AZ] (? r \ d {1})) (?! [A-zA-Z])' –