The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
null string matching i sed? Allasso Shell Programmering og Scripting 6 05-30-2008 08:44 PM
Regex deepakpv Shell Programmering og Scripting 6 03-28-2007 05:18 AM
Regex?? Please help lunac UNIX for dummyer Spørgsmål & svar 7 01-30-2007 01:13 PM
sammenligne null med ikke-null Nitin Shell Programmering og Scripting 8 11-04-2006 07:58 PM
find-regex: matching flere udvidelser r0sc0 Shell Programmering og Scripting 2 12-08-2005 02:32 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 06-05-2008
deckard's Avatar
deckard deckard is offline
Registreret Bruger
  
 

Join Date: Jul 2002
Beliggenhed: Ohio
Stillinger: 135
[LØST]: RegEx: Matching Null?

Jeg bruger webadressen Regex element i Squid for at tillade websteder via en liste over regex strings at matche tilladt domæner. Det regex faktisk var kopieret fra vores tidligere proxy løsning, og det syntes at "lige arbejde". Men vi har for nylig opdaget, at nogle domæner (sandsynligvis på grund af virtuelle vært eller vært header konfiguration afhængigt af om det er Apache eller IIS henholdsvis) mislykkes, hvis de anvendes uden www-præfikset i webadressen. Nedenfor er et eksempel på, hvad der undertiden værker:


Code:
http://.*\.microsoft\.com/.*

Den ".* \ '. før »Microsoft \. com 'portion bør betyde, et hvilket som helst antal tegn (nul eller flere) efterfulgt af et". " Jeg kan se fejlen i form af '\'. del af regex og planen om at fastsætte dette. Men jeg har været i stand til at finde en måde at matche både "www.microsoft.com" og "microsoft.com". Her er, hvad jeg troede ville arbejde:


Code:
http://[!.*|.*\.]microsoft\.com/.*

Jeg indrømmer, at jeg er virkelig dårlig med regex, så du skal ikke blive alt for hårdt på mig venligst. Jeg har bare aldrig været i stand til at "få det" 100%. Det er overflødigt at sige, at ovenstående ikke virker for mig overhovedet. Det passer hverken "microsoft.com" eller "www.microsoft.com". Jeg har prøvet nogle begrænset test med 'grep' for at forsøge at finde en tilfredsstillende løsning. Men, hvad er det, at jeg virkelig forsøger at matche? Ved første, jeg antages jeg ønskede en whitespace karakter, men jeg er ikke på udkig efter "microsoft.com". Så tænkte jeg, en null? Men det synes at være umuligt at svare, da det er egentlig ikke en kamp på alle, da der ingen tegn dér. Jeg er sikker på, at en person, der er ekspert på regex ville se på dette og give noget insanely enkel. Jeg forstår virkelig ikke ønsker at gøre dette:


Code:
http://[.*\.microsoft\.com/.*|microsoft\.com/.*]

eller værre, er dette:


Code:
http://.*\.microsoft\.com/.*
http://microsoft\.com/.*

Any suggestions? Thanks in advance ...

Sidst redigeret af deckard; 06-05-2008 på 11:57 AM.. Årsag: modtaget en løsning på problemet.
  #2 (permalink)  
Old 06-05-2008
spirtle spirtle is offline
Registreret Bruger
  
 

Join Date: Jun 2008
Location: Skotland
Stillinger: 150
Jeg er bekendt med Squid, og måske regexps arbejde anderledes der, men det ser ud for mig som du har brug for det "?" aktør, der matcher det foregående udtryk 0 eller 1 gange, fx

Code:
http://(www\.)?microsoft\.com/

gør hvad du vil, når den bruges som et grep argument.
  #3 (permalink)  
Old 06-05-2008
deckard's Avatar
deckard deckard is offline
Registreret Bruger
  
 

Join Date: Jul 2002
Beliggenhed: Ohio
Stillinger: 135
Tak!

Deres forslag likvideres arbejder for mig. Jeg har ændret alle mine linjer til følgende format:


Code:
http://(.*\.)?microsoft\.com/.*

Dette synes at have fungeret godt. Jeg vidste nogen om her ville finde dette for at være et simpelt problem at løse.
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 05:02 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0