package xml
import "github.com/tdewolff/parse/v2/xml"
Package xml is an XML1.0 lexer following the specifications at http://www.w3.org/TR/xml/.
Index ¶
- func EscapeAttrVal(buf *[]byte, b []byte) []byte
- func EscapeCDATAVal(buf *[]byte, b []byte) ([]byte, bool)
- type Lexer
- func NewLexer(r *parse.Input) *Lexer
- func (l *Lexer) AttrVal() []byte
- func (l *Lexer) Err() error
- func (l *Lexer) Next() (TokenType, []byte)
- func (l *Lexer) Text() []byte
- type TokenType
Examples ¶
Functions ¶
func EscapeAttrVal ¶
EscapeAttrVal returns the escape attribute value bytes without quotes.
func EscapeCDATAVal ¶
EscapeCDATAVal returns the escaped text bytes.
Types ¶
type Lexer ¶
type Lexer struct {
// contains filtered or unexported fields
}
Lexer is the state for the lexer.
func NewLexer ¶
func NewLexer(r *parse.Input) *Lexer
NewLexer returns a new Lexer for a given io.Reader.
Code:
Output:Example¶
{
l := NewLexer(parse.NewInputString("<span class='user'>John Doe</span>"))
out := ""
for {
tt, data := l.Next()
if tt == ErrorToken {
break
}
out += string(data)
}
fmt.Println(out)
// Output: <span class='user'>John Doe</span>
}
<span class='user'>John Doe</span>
func (*Lexer) AttrVal ¶
AttrVal returns the attribute value when an AttributeToken was returned from Next.
func (*Lexer) Err ¶
Err returns the error encountered during lexing, this is often io.EOF but also other errors can be returned.
func (*Lexer) Next ¶
Next returns the next Token. It returns ErrorToken when an error was encountered. Using Err() one can retrieve the error message.
func (*Lexer) Text ¶
Text returns the textual representation of a token. This excludes delimiters and additional leading/trailing characters.
type TokenType ¶
type TokenType uint32
TokenType determines the type of token, eg. a number or a semicolon.
const ( ErrorToken TokenType = iota // extra token when errors occur CommentToken DOCTYPEToken CDATAToken StartTagToken StartTagPIToken StartTagCloseToken StartTagCloseVoidToken StartTagClosePIToken EndTagToken AttributeToken TextToken )
TokenType values.
func (TokenType) String ¶
String returns the string representation of a TokenType.
Source Files ¶
- Version
- v2.7.20 (latest)
- Published
- Jan 28, 2025
- Platform
- linux/amd64
- Imports
- 2 packages
- Last checked
- 20 hours ago –
Tools for package owners.