← Back to team overview

sslug-teknik team mailing list archive

Re: POSIX regexp som matcher to ord

 

Hans Christian Studt <hcstudt@xxxxxxxxxxxxxx> writes:

> Når jeg kikker i
> man re_syntax
> står der at "\b" står for backspace, men det ser snarer ud som om "\b"
> i ovenstående eksempel betyder *afgrænsning af ord*

Den fortolkning er mindst lige så pseudo som min.

IEEE Std 1003.1-2001 siger følgende:
<http://opengroup.org/onlinepubs/007904975/basedefs/xbd_chap09.html#tag_09_03>

  BRE Ordinary Characters

  An ordinary character is a BRE that matches itself: any character in
  the supported character set, except for the BRE special characters
  listed in BRE Special Characters .

  The interpretation of an ordinary character preceded by a backslash
  ( '\' ) is undefined, except for:

    * The characters ')' , '(' , '{' , and '}'
    * The digits 1 to 9 inclusive (see BREs Matching Multiple Characters )
    * A character inside a bracket expression

GNUs regulære udtryk bruger \<, \> og \b til ordgrænser.

FreeBSD's regulære udtryk bruger [[:<:]] og [[:>:]] (og [[:<:][:>:]])

Rene posix-regexpes kan ikke matche direkte på ordgrænser. Istedet må
man matche på tegnene i ordet eller uden for ordet.

-- 
 Peter Makholm     |     Have you ever felt trapped inside a Klein bottle?
 peter@xxxxxxxxxxx |                                                      
 http://hacking.dk |                                                      


References