Top 150-InterviewMittel

Regulärer Ausdrucksabgleich

Detaillierte Anleitung und Python-Implementierung für das Problem „Regular Expression Matching“.

Problemstellung

Mittel

Implementieren Sie bei gegebener Eingabezeichenfolge s und einem Muster p den regulären Ausdrucksabgleich mit Unterstützung für „.“ und '*' wobei:

- '.' Entspricht einem beliebigen einzelnen Zeichen.

- '*' Entspricht null oder mehr des vorhergehenden Elements.

Der Abgleich sollte die gesamte Eingabezeichenfolge abdecken (nicht teilweise).

Schreiben Sie eine Funktion isMatch(s: str, p: str) -> bool.

Einschränkungen
  • 1 <= len(s) <= 20
  • 1 <= len(p) <= 20
  • s contains only lowercase English letters.
  • p contains only lowercase English letters, '.', and '*'.
  • It is guaranteed for each appearance of the character '*', there will be a previous valid character to match.

Beispiele

Example 1
Input
s = "aa", p = "a"
Output
False
Explanation

"a" does not match the entire string "aa".

Example 2
Input
s = "aa", p = "a*"
Output
True
Explanation

'*' repeats the preceding 'a' once to match "aa".

Example 3
Input
s = "ab", p = ".*"
Output
True
Explanation

".*" matches zero or more of any character.

Need a Hint?
Erwägen Sie die Verwendung von 2D-DP-spezifischen Datenstrukturen wie Mengen oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.