webForumDet fria alternativet

Försöker ersätta [param(src).value]

4 svar · 391 visningar · startad av dAEk

dAEkMedlem sedan feb. 20041 816 inlägg
#1

Halloj,

Jag har en textsträng som innehåller en massa information, bl.a.

[param(src).value]

där "src" kan vara vad som helst (a-z och 0-9) och där .value även kan vara .name, men det är inte så viktigt att kontrollera det. Nu vill jag ersätta alla dessa "[params(xxx).value]" med en annan sträng, exempelvis "apa".

Mitt halvtappra försök har givit mig detta expression som dock inte riktigt funkar.

alert("text text [param(fooooobaaaar).value] mer text".match(/^\[param\(\w\)\.value\]$/));

Man måste tydligen "escapa" sina grejer lite annorlunda i Java-världen och jag har väl aldrig varit en höjdare på regexps så jag har bara testat i js än så länge. Tänkte att det skulle vara lättare att få nåt att fungera så men det gick ju inte riktigt som planerat...

En vänlig knuff i rätt riktning vore inte helt fel. :bire

spangoMedlem sedan juni 20008 205 inlägg
#2

Är det i Java du ska få till det att funka? Det är inga konstigheter med escapes egentligen, det är bara det att man måste komma ihåg att en regexp ju skrivs i en sträng, så för att få till exempelvis \w måste man eskejpa backslashen med en backslash (eftersom javac annars tolkar det som ett försök till ett specialtecken). String pattern = "\\w";

Hursom, jag tror att patternet du är ute efter borde vara typ:
\[param\([a-z0-9]+\)\.(name|value)\]

dAEkMedlem sedan feb. 20041 816 inlägg
#3

Yes, det är tänkt att det ska in i Java-koden sen.
Det blir lite rörigare att följa regexps i Java jämfört med JS men det ger sig väl med tiden. Det var länge sedan jag ens rörde JS tbh.

Det ser ut att fungera som tänkt. Super-tack och bock! (y)

spangoMedlem sedan juni 20008 205 inlägg
#4

OK, i Java blir det:

Pattern p = Pattern.compile("\\[param\\([a-z0-9]+\\)\\.(name|value)\\]");
nitro2k01Medlem sedan aug. 20039 342 inlägg
#5

Flyttat från Regular Expressions på grund av att provtiden för forumet har gått ut

136 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)