Ich habe die folgende Zeichenfolge zu halten:Benötigen Sie Vorschläge, wie regex zu modifizieren, um die erste Ziffer in einer Capture-Gruppe
3> General Information 34> 3rd Party Software
Aus dieser Saite I 2 Matches mit 2 Gruppen in jedem von ihnen bekommen muß.
Mit dieser regex ([^\s\.\)\d\-,\>](\s{0,3}[^\s]+)*)
ich folgendes Ergebnis erhalten:
Match 1
Full match 6-25 'General Information'
Group 1. 6-25 'General Information'
Group 2. 13-25 ' Information'
Match 2
Full match 39-56 'rd Party Software'
Group 1. 39-56 'rd Party Software'
Group 2. 47-56 ' Software`
Hier ist der Link zu my regex demo fiddle.
Allerdings fehlt mir eine Nummer 3 in meinem zweiten Spiel. Statt '3rd Party Software' bekomme ich 'rd Party Software'. Irgendwelche Vorschläge, wie man diese Ziffer behält?
Danke.
der 3 wird, weil 'nicht erfasst [^ \ s \ \) \ d. \ - \ >]' schließt '\ d' (Dezimalziffer). Ich glaube nicht, dass dieser Regex das tut, was er zu tun glaubt. Wenn beispielsweise das "G" in "Allgemein" ein Kleinbuchstabe "g" wäre, würde es ausgeschlossen, da der zuvor referenzierte Zeichensatz auch "g" ausschließt. Es schließt einzelne Zeichen aus, nicht eine Folge von Zeichen. – Galen
Was genau ist das Ergebnis, das Sie für Ihre Matches & Capture-Gruppen wünschen? – Marathon55
@kfed macht diese Arbeit für Sie: '[\ w \ s] + (= \ s {6} | \ r * \ n?)' (<= \ D > \ s?)? – wp78de