Re: Numbers in wikiwords

Campo Weijerman <[email protected]>
Newsgroups gmane.comp.web.wiki.phpwiki.talk
Message-ID <20070928163838.GJ20886@python>
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:]])"
 
Hth,
-- 
$_ = "Campo Weijerman [rfc822://nl.ibm.com/]" and tr-[:]/-<@>-d and print;

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.