Autor Téma: Znak # v regulárním výrazu  (Přečteno 125 krát)

Offline PetrB0

  • Plnoletý
  • ***
  • Příspěvků: 164
  • Karma: 1
    • Verze Delphi: Delphi XE2, Delphi 10.2 Tokyo, Delphi 10.41
Znak # v regulárním výrazu
« kdy: 22-05-2024, 12:18:32 »
Ahoj,
má v delphi regulárních výrazech znak # nějaký zvláštní význam?
Mám vzor #([0-9a-f]{2}) pro odchytávání zápisů hexa čísel. Testoval jsem jej jako vždy na stránkách https://regex101.com/ a tam to funguje dle očekávání.
Ovšem delphi výraz TRegEx.Create('#([0-9a-f]{2})',[roIgnoreCase,roCompiled,roSingleLine,roIgnorePatternSpace]); mi potom do Match collection vrátil tolik prvků, kolik znaků měl řetězec.
Když jsem vzor přepsal na \#([0-9a-f]{2}), tak už delphi pracovalo, jak jsem potřeboval.
Co tedy samostatný znak # v regulárním výrazu dělá?