在根据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
我在哪里错了?
答案 0 :(得分:1)
这显然是一个错误(+是URI的保留分隔符),但是你链接到的BNF似乎已经过时了。可能最好使用一个included at the end of the latest RFC 3986。