Reulární výraz   otázka

C#, ASP.NET WebForms, WinForms

Ahoj, potřeboval bych pomoc regulárním výrazem.

Mám textový soubor z kterého potřebuji načítat hodnoty.

Příklad:

idprovozovna="25"

idpokladna="2"

zakl_dan1="10000.00"

dan1="2100"

...

mám následující kód:

    string strDan1 = "dan1=\\\"([^\\\"]*)\\\"";
    Match matchDan1 = Regex.Match(Setup.Trzba, strDan1, RegexOptions.IgnoreCase);
    Setup.Dan1 = decimal.Parse(matchDan1.Groups[1].Value, new CultureInfo("en-US"));

Kód funguje dobře, když potřebuju třeba idpokladna, ale jakmile potřebuju hodnotu z řádku dan1,

načte se mi zakl_dan1, protože to vyhovuje výrazu.

Zkoušel jsem upravit výraz takto, ale to nefunguje, vrací to {}

 string strDan1 = "^(dan1=\\\"([^\\\"]*)\\\")";

Můžete mi někdo poradit jak na to?

Díky

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dobrý den,

Předně na otestování správnosti regulárních výrazů vřele doporučuji online nástroj Regex Hero:

http://regexhero.net/tester

(úplně stačí i verze zdarna)

Pro tu dan1 normálně funguje výraz:

^dan1=\"([^\"]*)\"

(váš původní výraz pouze s doplněním ^ na začátku)

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback