2017-12-16 2 views
1

Ich möchte alphanumerische Zeichen übereinstimmen und es muss zwingend Ziffern enthalten. Grundsätzlich möchte ich eine Bestellnummer extrahieren, die eine Kombination aus Alphabeten, Ziffern und einigen Sonderzeichen ist. Ich schrieb die folgende regexMandat eine Gruppe innerhalb Regex ODER Gruppe

String invoiceRegex="(?<=((?i)(PO|P/O|ORDER)([\\s|.]{0,4})(number|no)?[|: -.]{0,10}))([\\dA-Z:-]*)";

Aber dann paßt es die ungültigen Informationen wie SOFORT und andere Worte. Deshalb möchte ich eine Regex, die alphanumerische Zeichen mit Ziffern zwingend entspricht.

Beispiel: Von Text "P/O Nr.: P9: 8774" ich will P9: 8774.

Antwort

1

Ich löste das Problem.Ich machte eine Gruppe mit Alphabeten eine Option und Ziffer obligatorisch.und wiederholte dann diese Gruppe mit +.

jetzt sieht es etwa so aus. an

String invoiceRegex="(?<=((?i)(PO|P/O|ORDER)([\\s|.]{0,4})(number|no)?[|: -.]{0,10}))([A-Z:-]*\\d+)+";