2016-10-21 4 views
-3

Ich bin kein Experte bei Regex. Ich möchte einen regulären Ausdruck für folgende AnforderungenIch möchte eine Regex dafür?

  1. Es hat 1 Vorkommen von String sein „[Zahl]“ (Klammern enthalten) (mehrfache erlaubt Vorkommen)
  2. Es können Zeichen vor oder nach der [Nummer] (diese Zeichen bereitgestellt erfüllen zu: ([a-zA-Z0-9_-.]), dh. die Dinge in einer E-Mail erlaubt
  3. 0 oder mehr Vorkommen von string "[Land]" ist überall

erlaubt Derzeit habe ich:

^([[number])?([[a-zA-Z0-9_-.]+)?([[number])?([[country])?([[number])?([[a-zA-Z0-9_-.]+)?([[number])?[[number]([[number])?([[a-zA-Z0-9_-.]+)?([[number])?([[country])?([[number])?([[a-zA-Z0-9_-.]+)?([[number])?([[a-zA-Z0-9_-.]+)? 

Ich glaube nicht, dass dies abgeschlossen ist.

+0

Vielleicht sollten Sie versuchen, [regex101] (https://regex101.com/). –

+0

Probeneingaben werden schwierig sein, weil es Millionen von Möglichkeiten gibt. – Rish

+1

Es wird hilfreich sein, ein paar Dinge, die _should_ übereinstimmen sollten, sowie einige, die _should not_. – TemporalWolf

Antwort

0

Omg, das ist horrbile ... Ich denke, dieses tun:

((\[country\]|[a-zA-Z0-9_\-.])*\[number\])+(\[country\]|[a-zA-Z0-9_\-.])* 
+2

Es ist wahrscheinlich lohnenswert, die meisten dieser Gruppen nicht zu erfassen, aber die Regex sieht gut aus für mich. Es würde sich lohnen, Ihre Regex zu erklären, oder einen Verweis regex101/debuggex/regexr/etc bereitzustellen, um das Verständnis sowohl für die OP als auch für die zukünftigen Zuschauer zu erleichtern. – TemporalWolf

+0

Vielen Dank :) – Rish