31. januar 2006 - 00:23
Der er
12 kommentarer og 1 løsning
se om parantes, rund som kantet, i streng
Jeg har lidt problemer med at se om en streng indeholder f.eks. "[]" eller "()". Hvordan kan jeg gøre det ?
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
31. januar 2006 - 02:44
#1
regular expression vil jeg tro
31. januar 2006 - 04:31
#2
Enig, medmindre paranteserne skal være matchede i ubegrænset omfang... Følgende burde returnere false hvis tegnene ikke findes (det er ikke testet og kan formentlig undvære et par backslashes): preg_match("/[[\]\(\)]/", "Streng der skal testes")
31. januar 2006 - 07:47
#3
Tror du ikke ikke noget stil med: preg_match('/\(|\)|\[|\]/', $tekst)
31. januar 2006 - 12:17
#4
Jeg har forsøgt at lave det med en ereg() men det virker ikke for mig :( Det som jeg helt præcist vil lave er at teste om en given string indeholder det man søger f.eks. "[2]" eller "()" eller... Jeg anvender: if (eregi($search, $test_string)) { // match } else { // ikke match } og hvis jeg så søger på "[" så får jeg denne fejl: Warning: eregi() [function.eregi]: REG_EBRACK
31. januar 2006 - 14:03
#5
Prøv at escape den med \ og hvis det hjælper, så må din funktion tilføje \ foran alle problematiske tegn i søgeteksten, bla: [,],*,(,),- og +. >>jakobdo "/[[\]\(\)]/" og '/\(|\)|\[|\]/' er det samme udtryk. ;-)
03. februar 2006 - 12:48
#6
tjp: Du escaper jo ikke nummer 2: [
03. februar 2006 - 14:30
#7
Jeg antager, at når den kommer lige efter den anden er der ikke tvivl om at det er et tegn og ikke et metategn. Men virker det ikke, kan man jo altid escape.
03. februar 2006 - 18:41
#8
:o)
06. februar 2006 - 11:55
#9
Findes der en smart funktion til at tilføje "\" foran alle "(", ")", "[" og "]" ?
06. februar 2006 - 11:56
#10
måske ereg_replace('(', '\('); osv ?
06. februar 2006 - 12:21
#11
Hvorfor vil du tilføje \ foran dem alle?
30. marts 2006 - 23:26
#12
Jeg fik det til at virker, takker for hjælp!
30. marts 2006 - 23:31
#13
/[][()]/ hvis du vil slippe for alle de grimme backslashes
Vi tilbyder markedets bedste kurser inden for webudvikling