editplus Skrevet 27. februar 2007 Skrevet 27. februar 2007 Ikke sikker på om dette er det rette forumet men jeg får prøve. Er ikke spesielt god på regex så jeg lurte på om noen har eller kan lage en regular expression som virker som funksjonen beskrevet på http://no.php.net/is_numeric det vil si at den bare matcher på noe som er et tall og ikke noe annet
Manfred Skrevet 27. februar 2007 Skrevet 27. februar 2007 (endret) preg_match("/^[0-9]*$/", $myvar); // <3 perl Endret 27. februar 2007 av Manfred
GeirGrusom Skrevet 27. februar 2007 Skrevet 27. februar 2007 Skulle ønske jeg forstod en dritt av regex... Har du noen bra linker, Manfred?
Manfred Skrevet 27. februar 2007 Skrevet 27. februar 2007 Jeg har hodet mitt... Hehe... Jeg har liksom bare lært mye av diverse utfordringer underveis, og endel fra en jeg jobbet med tidligere. Regexp er gøy... Perl er helt GULL når det kommer til regexp
GeirGrusom Skrevet 27. februar 2007 Skrevet 27. februar 2007 Jeg brukte regex til en IDE jeg holdt på med (syntax highlighting) men jeg fikk ikke helt til at den skulle forstå []
___ Skrevet 27. februar 2007 Skrevet 27. februar 2007 Ikke sikker på om dette er det rette forumet men jeg får prøve. Er ikke spesielt god på regex så jeg lurte på om noen har eller kan lage en regular expression som virker som funksjonen beskrevet på http://no.php.net/is_numeric det vil si at den bare matcher på noe som er et tall og ikke noe annet 8037691[/snapback] Jeg har i alle år sverget til "Mastering Regular Expressions" av Jeffrey Friedl. Den omhandler bruk av regexp i forskjellige miljøer, og nytt i tredjeutgaven er faktisk et eget kapittel om bruk av regexp i PHP. Jeg lærte virkelig mye fra denne boka, og har virkelig fått bruk for kunnskapene senere. Kan varmt anbefales. Info om boka finner du her: http://regex.info/ Hilsen Werner
ze5400 Skrevet 27. februar 2007 Skrevet 27. februar 2007 Skulle ønske jeg forstod en dritt av regex...Har du noen bra linker, Manfred? 8038515[/snapback] Enig der, trengte regex til et prosjekt jeg holdt på med i php, jeg fikk det til til slutt, uten å forstå en dritt av hvordan
Manfred Skrevet 27. februar 2007 Skrevet 27. februar 2007 Men så kan vi jo se fremgangsmåten din i signaturen min da, ze5400 *knis*
steingrim Skrevet 27. februar 2007 Skrevet 27. februar 2007 Jeg brukte regex til en IDE jeg holdt på med (syntax highlighting) men jeg fikk ikke helt til at den skulle forstå [] 8039819[/snapback] [ og ] brukes som regel for å angi "en av tegnene inni []", feks [abc] vil match a, b eller c -- eller for å angi feks [a-z] som betyr en hvilken som helst bokstav, osv. Masse rart man kan kombinere, men det kommer litt an på hva slags du benytter deg av. Men uansett, hvis du vil matche [ og ] så må du escape dem, vanligvis med \, altså \[ og \]. Men obs, hvis du skriver dette inn i en string, så er \ i de aller fleste språk escape-tegnet for spesialtegn i stringen, derfor må du først escape den også, altså blir det \\[ og \\]. (dette kan du slippe i feks c# ved å bruke @ foran stringen: @"\[" betyr "\\[").
ze5400 Skrevet 28. februar 2007 Skrevet 28. februar 2007 Men så kan vi jo se fremgangsmåten din i signaturen min da, ze5400 *knis* 8041252[/snapback] Joda, for din er jo mye bedre (se min signatur ) PS; Ord er mektige, men de er enda mektigere når man bare siterer HALVE setninga
................... Skrevet 28. februar 2007 Skrevet 28. februar 2007 (endret) ... Endret 10. juli 2010 av ...................
Manfred Skrevet 28. februar 2007 Skrevet 28. februar 2007 Du måtte bare få med hele ordet "Regular Expressions" for å brife med at du kunne det? Haha! Det var på kanten til å være litt patetisk
cyclo Skrevet 28. februar 2007 Skrevet 28. februar 2007 Regexp (og særlig perl regexp) er noe av det mest geniale i hele verden. Og så utrolig morsomt. Man kan skrive en helt enkel en, eller en sinnsykt hardcore from hell regexp som ingen andre forstår, og som du selv heller ikke forstår neste gang du skal endre den :)
................... Skrevet 28. februar 2007 Skrevet 28. februar 2007 (endret) ... Endret 10. juli 2010 av ...................
kjetil7 Skrevet 28. februar 2007 Skrevet 28. februar 2007 Synes du virkelig det er rart at folk uten erfaring har vanskeligheter med å forstå regular expressions? En ganske unødvendig kommentar var det uansett. Nok om det. En god side for å lære litt om emnet: http://regular-expressions.info/
cyclo Skrevet 28. februar 2007 Skrevet 28. februar 2007 Hva er det som egentlig som er uforståelig med Regular Expressions? 8046470[/snapback] Mener du seriøst det? Regexp er helt og totalt uforståelig for noen som ikke har erfaring med det. Man må virkelig sette seg inn i det for å kunne forstå. Ikke minst er det et problem at f. eks. 20 forskjellige regexp'er kan gjøre nøyaktig det samme. Hvordan man skriver regexp'er har svært mye med personlig stil å gjøre.
GeirGrusom Skrevet 28. februar 2007 Skrevet 28. februar 2007 Hva er det som egentlig som er uforståelig med Regular Expressions? 8046470[/snapback] Som når folk sier "jeg forstår ikke en dritt av maskinkode jeg ass!" Så svarer jeg "hah! n00bzor! jeg crackzora progz mens du fotsatt lekte med batch script!" Det er ihvertfall min hverdag. Jeg famler kanskje i blinde, men jeg tipper at >REGEX< er ganske vanskelig å forstå når man ikke kan det. Jeg har hatt problemer med å finne skikkelige tutorials, eller forklaringer.
cyclo Skrevet 28. februar 2007 Skrevet 28. februar 2007 Norgul: Her har du en du kan bryne deg på: (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t] )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?: \r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:( ?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0 31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\ ](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+ (?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?: (?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z |(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n) ?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\ r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n) ?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t] )*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])* )(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t] )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*) *:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+ |\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r \n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?: \r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t ]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031 ]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\]( ?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(? :(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(? :\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(? :(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)? [ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]| \\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<> @,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|" (?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t] )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(? :[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[ \]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000- \031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|( ?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,; :\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([ ^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\" .\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\ ]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\ [\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\ r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\] |\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \0 00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\ .|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@, ;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(? :[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])* (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\". \[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[ ^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\] ]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*( ?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:( ?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[ \["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t ])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t ])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(? :\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+| \Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?: [^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\ ]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n) ?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[" ()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n) ?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<> @,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@, ;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t] )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)? (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\". \[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?: \r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[ "()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t]) *))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]) +|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\ .(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z |(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:( ?:\r\n)?[ \t])*))*)?;\s*)
GeirGrusom Skrevet 28. februar 2007 Skrevet 28. februar 2007 "Inverske kinematics in software skeletal animation using regular expressions"
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå