21. marts 2002 - 16:03Der er
4 kommentarer og 1 løsning
Søgning efter tekststykke i en streng
Det burde være intet problem at lede efter et tekststykke i en streng. Der er imidlertid ikke noget i StringBuffer eller String der hedder "contains" el. lign.
Jeg har to stykke streng. Det ene stykke er lavet sådan: String stykke = sb.substring(i-str.length(), i);
Den anden streng er simpelthen "str" som i dette tilfælde indeholder "<b>"
Jeg ved at "stykke" på et tidspunkt er "<b>" og jeg har da en if-sætning: if (stykke == str) { fundet = true; }
Men nej, "fundet" bliver aldrig "true". Selvom jeg har prøvet at skrive følgende lige inden if-sætningen: System.out.println(stykke+" ?= "+str);
og det viser at de to strenge på et tidspunkt er helt ens.
Jeg har prøvet at skifte "stykke" og "str" ud med "<b>" begge steder, således:
if ("<b>" == "<b>") fundet = true;
og så bliver "fundet" til "true" - derfor må jeg konkludere at den ikke forstår at sammenligne "stykke" og "str" selvom de begge er simple strengeobjekter.
Returns the index within this string of the first occurrence of the specified substring.
Parameters: str - any string. Returns: if the string argument occurs as a substring within this object, then the index of the first character of the first such substring is returned; if it does not occur as a substring, -1 is returned.
dvs if ( dinlangstreng.indexOf( "<br>" ) >= 0 ) { // så findes "<br>" som del af den streng. }
Tak for hjælpen - det var netop den indexOf-funktion jeg var igang med at lave forfra ... jeg så godt "equals" derinde, men den virkede på samme måde som '==', altså i mit tilfælde, slet ikke.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.