freeCodeCamp/curriculum/challenges/german/02-javascript-algorithms-an.../regular-expressions/restrict-possible-usernames.md

3.0 KiB

id title challengeType forumTopicId dashedName
587d7db8367417b2b2512ba2 Mögliche Benutzernamen einschränken 1 301363 restrict-possible-usernames

--description--

Nutzernamen werden überall im Internet verwendet. Sie geben den Nutzern eine einzigartige Identität auf ihren Lieblingsseiten.

Du musst alle Benutzernamen in einer Datenbank überprüfen. Hier sind einige einfache Regeln, die du bei der Erstellung deines Benutzernamens beachten musst.

  1. Nutzernamen dürfen nur alphanumerische Zeichen enthalten.

  2. Die einzigen Zahlen im Benutzernamen müssen am Ende stehen. Am Ende können es null oder mehr sein. Der Benutzername darf nicht mit einer Zahl beginnen.

  3. Der Benutzername kann in Klein- und Großbuchstaben geschrieben werden.

  4. Benutzernamen müssen mindestens zwei Zeichen lang sein. Ein zweistelliger Benutzername kann nur Buchstaben des Alphabets als Zeichen verwenden.

--instructions--

Ändere den regulären Ausdruck userCheck so, dass er den oben genannten Bedingungen entspricht.

--hints--

Dein regulärer Ausdruck sollte auf den String JACK passen.

userCheck.lastIndex = 0;
assert(userCheck.test('JACK'));

Dein regulärer Ausdruck sollte nicht auf den String J passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('J'));

Dein regulärer Ausdruck sollte auf den String Jo passen.

userCheck.lastIndex = 0;
assert(userCheck.test('Jo'));

Dein regulärer Ausdruck sollte auf den String Oceans11 passen.

userCheck.lastIndex = 0;
assert(userCheck.test('Oceans11'));

Dein regulärer Ausdruck sollte auf den String RegexGuru passen.

userCheck.lastIndex = 0;
assert(userCheck.test('RegexGuru'));

Dein regulärer Ausdruck sollte nicht auf den String 007 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('007'));

Dein regulärer Ausdruck sollte nicht auf den String 9 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('9'));

Dein regulärer Ausdruck sollte nicht auf den String A1 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('A1'));

Dein regulärer Ausdruck sollte nicht auf den String BadUs3rnam3 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('BadUs3rnam3'));

Dein regulärer Ausdruck sollte auf den String Z97 passen.

userCheck.lastIndex = 0;
assert(userCheck.test('Z97'));

Dein regulärer Ausdruck sollte nicht auf den String c57bT3 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('c57bT3'));

Dein regulärer Ausdruck sollte auf den String AB1 passen.

userCheck.lastIndex = 0;
assert(userCheck.test('AB1'));

Dein regulärer Ausdruck sollte nicht auf den String J%4 passen.

userCheck.lastIndex = 0;
assert(!userCheck.test('J%4'))

--seed--

--seed-contents--

let username = "JackOfAllTrades";
let userCheck = /change/; // Change this line
let result = userCheck.test(username);

--solutions--

let username = "JackOfAllTrades";
const userCheck = /^[a-z]([0-9]{2,}|[a-z]+\d*)$/i;
let result = userCheck.test(username);