2017-10-16 28 views
-2

I eine Anforderung entsprechen, die für die unter dem regulären Ausdruck behandeln müssen: -Muss keine von Alphabeten in Sequenz enthält, mehr als 3 aufeinanderfolgende Buchstaben (PASS - abc, bcd, aabcd, abcdd, abcc, CDEE, ghid, stua | FAIL - abcd, bcde, cdef, GHIJKLM)regulärer Ausdruck die Zeichenfolge

Antwort

0

Es ist ein wenig lang, aber ich denke, das ist das, was Sie suchen:

\w*((abcd)|(bcde)|(cdef)|(defg)|(efgh)|(fghi)|(ghij)|(hijk)|(ijkl)|(jklm)| 
(klmn)|(lmno)|(mnop)|(nopq)|(opqr)|(pqrs)|(qrst)|(rstu)|(stuv)|(tuvw)|(uvwx)| 
(vwxy)|(wxyz))\w* 

dieses Muster passt alle fehlerhafte Zeichenfolgen Die Idee ist einfach: Wenn ein String eine Sequenz mit 4 Buchstaben hintereinander hat, ist er ungültig.

+0

Was ist mit der Regex, wenn wir die Großbuchstaben betrachten? Dann wird es zu groß sein – Abhi

+0

es hängt davon ab, ob Sie ABCD unterscheiden sich von ABCD oder abcd oder AbCD :) je nach Ihrer Anforderung kann sehr lang ... wenn Sie nur Sie müssen die I-Flag ignorieren:/regex/i –

+0

überprüfen Sie dies: https://StackOverflow.com/Questions/24395542/regex-ignore-case :) –

Verwandte Themen