ho stringhe come questi:Java schema di espressione regolare con stringa opzionale
something something [[abcd]] blah blah
something something [[xyz|abcd]] blah blah
Quello che voglio in entrambi i casi è:
something something abcd blah blah
Come faccio a fare questo utilizzando solo 1 schema di espressione regolare in Java? Posso fare il primo caso di questo:
Pattern pattern = Pattern.compile("\\[\\[(.+?)\\]\\]");
Matcher m = patternLinkRemoval.matcher(text);
return m.replaceAll("$1");
Sembra che tu stia cercando di analizzare MediaWiki-Sintassi, forse un parser da http://www.mediawiki.org/wiki/Alternative_parsers sarebbe un'alternativa migliore in quanto MediaWiki presenta alcuni casi di limite. –
Sembra una fonte utile. Grazie! – pckben
Sweble sembra piuttosto bella: http://sweble.org/crystalball/?wicket:interface=:11:query-form::IFormSubmitListener::&stage=POSTPRO&expMode=NOT_APPLICABLE&format=TEXT&query:wikitext=something+something+%5B%5Babcd% 5D% 5D + blah + blah% 0Asquare + qualcosa +% 5B% 5Bxyz% 7Cabcd% 5D% 5D + blah + blah –