2017-02-22 13 views
1

Существует BBCode reference site. Но существует ли существует Backus normal form из BBCode?Extended BNF BBCode

+0

"ссылка на сайт" на самом деле очень старый. Современные варианты BBCode продвигаются вместе с остальным миром и могут включать «упоминания», «заголовки», «проставки» и т. Д. –

ответ

2

я написал для моего personal project:

<document> ::= <element> | <document> <element> 
<element> ::= <tag> | <content> 
<tag> ::= <opening_tag_1> | <opening_tag> <content> <closing_tag> 
<opening_tag> ::= <opening_tag_1> | <opening_tag_2> 
<opening_tag_1> ::= <tag_prefix> <tag_end> 
<opening_tag_2> ::= <tag_prefix> '=' <attr> <tag_end> 
<tag_prefix> ::= <tag_start> <tag_name> 
<tag_start> ::= '[' 
<tag_end> ::= ']' 
<attr> ::= <character> | <attr> <character> 
<closing_tag> ::= <tag_start> '/' <tag_name> <tag_end> 
<tag_name> ::= <character_non-key> | <tag_name> <character_non-key_2> 
<content> ::= <character> | <content> <character> 
<character> ::= unicode 
<character_non-key> ::= unicode not including '[', '=', ']', '/' 
<character_non-key_2> ::= <character_non-key> | '/'