Thema: Regex Options

  1. #1
    Avatar von ThunderStorm
    Registriert seit
    12.02.2013
    Beiträge
    479
    Thanked 1.086 Times in 84 Posts

    Standard Regex Options

    Hey,

    bin grad über den code hier gestolpert:


    Regex _regex = new Regex(pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);


    Das RegexOptions.IgnoreCase | RegexOptions.Compiled am schluss verstehe ich nicht.
    | ist doch oder also macht die bedingung garkeinen sinn?

  2. #2

    Registriert seit
    19.11.2011
    Beiträge
    496
    Thanked 412 Times in 268 Posts

    Standard AW: Regex Options

    Mit dem bitweisen Oder kannst du Bedingungen bzw. Flags verknüpfen.

    Beispiel:
    Code:
    Bedingung1 = 1;
    Bedingung2 = 2;
    
    Bedingungen = Bedingung1 | Bedingung2;
    
    if (Bedingungen & Bedingung1 == Bedigung1) // Wenn Bedingung1 gesetzt ist
     machWas();
    Geändert von Mr. White (13.03.2013 um 16:21 Uhr)

  3. The Following User Says Thank You to Mr. White For This Useful Post:

    ThunderStorm (13.03.2013)

  4. #3
    Avatar von ThunderStorm
    Registriert seit
    12.02.2013
    Beiträge
    479
    Thanked 1.086 Times in 84 Posts

    Standard AW: Regex Options

    Das heißt also dass das RegexOptions.IgnoreCase und RegexOptions.Compiled bedeutet?
    Verwirrt mich etwas weil | ja eigentlich ein oder ist.. hätte dann eher & erwartet


    Zitat Zitat von helpster.de
    Festplatten von 2 Gigabyte RAM sind mittlerweile günstig zu haben.

  5. #4

    Registriert seit
    19.11.2011
    Beiträge
    496
    Thanked 412 Times in 268 Posts

    Standard AW: Regex Options

    Ja, in diesem Fall kannst du dir das bitweise Oder wie ein logischen Und vorstellen.
    Bitflags sind ein altes Überbleibsel aus C. In OOP werden üblicherweise EnumSets o.ä. eingesetzt.
    Geändert von Mr. White (13.03.2013 um 16:20 Uhr)

  6. The Following 2 Users Say Thank You to Mr. White For This Useful Post:

    Sky.NET (13.03.2013), ThunderStorm (13.03.2013)

  7. #5
    Avatar von ThunderStorm
    Registriert seit
    12.02.2013
    Beiträge
    479
    Thanked 1.086 Times in 84 Posts

    Standard AW: Regex Options

    Alles klar, vielen dank!
    Nur so aus interesse gefragt: was würde RegexOptions.IgnoreCase & RegexOptions.Compiled bewirken? dasselbe wie RegexOptions.IgnoreCase | RegexOptions.Compiled?


    Zitat Zitat von helpster.de
    Festplatten von 2 Gigabyte RAM sind mittlerweile günstig zu haben.

  8. #6

    Registriert seit
    19.11.2011
    Beiträge
    496
    Thanked 412 Times in 268 Posts

    Standard AW: Regex Options

    Nein, du kannst nicht einfach das | durch & ersetzen. Wenn du versuchst, die Optionen mit & zu verknüpfen, ist die Klasse intern nicht mehr in der Lage herauszufinden, welche Optionen nun gesetzt sind.

Ähnliche Themen

  1. VB.Net Regex Ausgabe bleibt leer?!
    Von One Way im Forum .Net
    Antworten: 2
    Letzter Beitrag: 05.03.2014, 15:39
  2. VB.Net Regex Problem
    Von One Way im Forum .Net
    Antworten: 1
    Letzter Beitrag: 09.09.2013, 15:20
  3. Hilfe Bei Regex
    Von Avenged im Forum Java
    Antworten: 1
    Letzter Beitrag: 14.07.2013, 17:18
  4. Regex von mehreren Elementen
    Von Comu im Forum PHP
    Antworten: 5
    Letzter Beitrag: 29.10.2012, 21:13
  5. VB.NET Regex Problem
    Von Escobar im Forum .Net
    Antworten: 1
    Letzter Beitrag: 04.01.2012, 02:20
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.