07. august 2008 - 10:20Der er
5 kommentarer og 1 løsning
Hjælp til regex
Hej, jeg sidder lige og prøver at forstå noget omkring regex i PHP. Der er dog et eksempel i min bog, jeg ikke kan få til at hænge sammen, som jeg håber I kan hjælpe mig med.
Følgende pattern: "/\S+/" burde i min verden betyde at den matcher alle de steder i min tekst, hvor der er 0 eller flere whitespaces. Men når jeg kører den med preg_match_all, f.eks. preg_match_all("/\S/", $text, $matches);, ender $matches ud med at indeholde alle ord. Det kan jeg ikke få til at hænge sammen.
Brug af AI afslører de svagheder, virksomheder allerede har opbygget gennem års cloud-transformation, nye SaaS-løsninger og fragmenterede sikkerhedssystemer.
\s = match alle whitespace \S = match alt andet end whitespace
preg_match_all returnerer de ting der matchede din regex. Hvis du brugte \s, ville du derfor få alle mellemrum (og andet der gælder som værende whitespace) fra preg_match_all. \S gør det modsatte - den giver dig alt der ikke er whitespace.
+'et gør at den skal matche så meget som muligt (greedy), hvorfor du ikke får tegnene individuelt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.