From: Reini U. <ru...@x-...> - 2007-09-29 09:06:20
|
Campo Weijerman schrieb: > On Fri, Sep 28, 2007 at 10:57:24AM +0200, Sabri LABBENE wrote: >> Hi all, >> I'm using phpwiki-1.3.12 and I'm trying to make it recognize CamelCase words with numbers inside as wikiwords, fo example: >> - CamelCase2 -> is a wikiword >> - Camel2Case -> is also a wiki word >> - 2CamelCase -> is also a wiki word >> >> I think there should be a regular expression somewhere in the code that decides if a word is a wikiword. Can someone teel where to find it ? If there will some side effects whenever numbers are considered into wikiwords ? > > Hi, > > We had a similar requirement and solved it back with phpwiki 1.3.3 by > changing the definition of $WikiNameRegexp in index.php > > With more recent releases there is WIKI_NAME_REGEXP in config/config.ini > > It takes some tweaking to arrive at the right compromise between the > regex being too wide or too narrow. I think too wide is worse than > too narrow: you can always force linking to a page by putting the name > in [brackets], which is less painful than having to escape every other > word on a page... > > We have been using this for years now: > > WIKI_NAME_REGEXP = "(?<![[:alnum:]])[[:upper:]][[:alnum:]]*?[[:lower:]][[:alnum:]]*?[[:upper:]][[:alnum:]]*(?![[:alnum:]])"; > > Btw, the default is > > WIKI_NAME_REGEXP = "(?<![[:alnum:]])(?:[[:upper:]][[:lower:]]+){2,}(?![[:alnum:]])" config-dist.ini in CVS has these options: http://phpwiki.cvs.sourceforge.net/phpwiki/phpwiki/config/config-dist.ini?revision=1.83&view=markup ; Perl regexp for WikiNames ("bumpy words"): ; (?<!..) & (?!...) used instead of '\b' because \b matches '_' as well ; Allow digits: BumpyVersion132 ; WIKI_NAME_REGEXP = "(?<![[:alnum:]])(?:[[:upper:]][[:lower:][:digit:]]+){2,}(?![[:alnum:]])" ; Allow lower+digits+dots: BumpyVersion1.3.2 ; WIKI_NAME_REGEXP = "(?<![[:alnum:]])(?:[[:upper:]][[:lower:][:digit:]\.]+){2,}(?![[:alnum:]])" ; Default old behaviour, no digits as lowerchars. ;WIKI_NAME_REGEXP = "(?<![[:alnum:]])(?:[[:upper:]][[:lower:]]+){2,}(?![[:alnum:]])" -- Reini Urban http://phpwiki.org/ http://murbreak.at/ http://helsinki.at/ http://spacemovie.mur.at/ |