URL BNF搜索部分没有意义

时间:2010-04-14 13:10:20

标签: url w3c bnf

在根据W3C发布的URL BNF实现URL的Java正则表达式时,我无法理解搜索部分。引用:

httpaddress             h t t p :   / / hostport [  / path ] [ ?
                         search ]   
search                  xalphas [ + search ]   
xalphas                 xalpha [ xalphas ]   
xalpha                  alpha | digit | safe | extra | escape   
alpha                   a | b | c | d | e | f | g | h | i | j | k |
                         l | m | n | o  | p | q | r | s | t | u | v |
                         w | x | y | z | A | B | C  | D | E | F | G |
                         H | I | J | K | L | M | N | O | P |  Q | R |
digit                   0 |1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9   
safe                    $ | - | _ | @ | . | &  | + | - 
extra                  ! | * |  " |  ' | ( | )  | , 

搜索声称它是 xalphas 由加号分隔。 xalphas 可以自己包含加号,如 safe 所声称的那样。 因此根据我的理解,它应该是:

search     xalphas

我在哪里错了?

1 个答案:

答案 0 :(得分:1)

这显然是一个错误(+是URI的保留分隔符),但是你链接到的BNF似乎已经过时了。可能最好使用一个included at the end of the latest RFC 3986