Moin,
boolean isLinkSet=false;
if (pageText2.matches(linkTextReg))
isLinkSet=true;
pageText2=
**__[bier5|Howto.custom.bier5]__
__[bier6|Howto.custom.bier6]__**
und linkTextReg= .*Howto.custom.bier6.*
Bezihungsweise UNGERENDERT:
pageText2=
__[bier5|Howto.custom.bier5]__\r\n\r\n__[bier6|Howto.custom.bier6]__
und linkTextReg= .*Howto\.custom\.bier6.*
So zeigt es mir Eclipse beim Debuggen an.
Danach ist isLinkSet weiterhin false und nicht true!
Meiner Meinung nach müsste aber true zutreffen,
da 1. „*.“=belibiges Zeichen 0 bis unendlich mal: Treffer
2. Howto\.custom\.bier6 = Howto.custom.bier6: Treffer
3. „*.“=belibiges Zeichen 0 bis unendlich mal: Treffer
Hab ich irgend ein Fehler in meinen RegEx?? Java hat da ja leider immer seine Eigenheiten (wie z.B. \ statt ). Kann mir mal ein Javaspezi helfen???
Vielen Dank&Gruß Thomas
Moin auch.
boolean isLinkSet=false;
if (pageText2.matches(linkTextReg))
isLinkSet=true;
pageText2=
**__[bier5|Howto.custom.bier5]__
__[bier6|Howto.custom.bier6]__**
und linkTextReg= .*Howto.custom.bier6.*
Bezihungsweise UNGERENDERT:
pageText2=
__[bier5|Howto.custom.bier5]__\r\n\r\n__[bier6|Howto.custom.bier6]__
und linkTextReg= .*Howto\.custom\.bier6.*
So zeigt es mir Eclipse beim Debuggen an.
Danach ist isLinkSet weiterhin false und nicht true!
Meiner Meinung nach müsste aber true zutreffen,
da 1. „*.“=belibiges Zeichen 0 bis unendlich mal: Treffer
2. Howto\.custom\.bier6 = Howto.custom.bier6: Treffer
3. „*.“=belibiges Zeichen 0 bis unendlich mal: Treffer
Hab ich irgend ein Fehler in meinen RegEx??
Standardmässig matcht der Punkt keine Newlines. Das musst Du Deinem
Ausdruck mit dem DOT_ALL-Modus ‚s‘ abgewöhnen:
String pageText2 = "\_\_[bier5|Howto.custom.bier5]\_\_\r\n\r\n\_\_[bier6|Howto.custom.bier6]\_\_";
String linkTextReg = "**(?s)**.\*Howto\\.custom\\.bier6.\*";
Gruß,
-Andreas.