spliter

package
v0.8.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 5, 2026 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MQLSplit

func MQLSplit(text string) (mqls []string)

分号分隔多条MQL语句 支持 begin batch - end 已知问题:begin batch - end 内,如果单条语句中包含 end 必须用双引号括起来,如:begin batch select "end" from table end

func MQLSplitClean

func MQLSplitClean(text string) (mqls []string)

分号分隔多条MQL语句 支持 begin batch - end 已知问题:begin batch - end 内,如果单条语句中包含 end 必须用双引号括起来,如:begin batch select "end" from table end

Types

type ExcludeFlag

type ExcludeFlag struct {
	PrevChar  *regexp.Regexp // 排除内容起始标记前,前置字符,比如:关键字单词前必须是非单词字符或者是整体内容的开头,正则表达式应只尝试匹配前一个字符
	NextChar  *regexp.Regexp // 排除内容结束标记后,后置字符,比如:关键字单词后必须是非单词字符或者是整体内容的结尾,正则表达式应只尝试匹配后一个字符
	Begin     string
	End       string
	Escape    string
	RegxBegin *regexp.Regexp
	RegxEnd   *regexp.Regexp
	Nestable  bool
	Remove    bool // 剔除排除内容,如注释信息
}

排除内容标记

type MQLSpliter

type MQLSpliter struct {
	// contains filtered or unexported fields
}

func NewMQLSpliter

func NewMQLSpliter(reader io.Reader) *MQLSpliter

分号分隔多条MQL语句 支持 begin batch - end 已知问题:begin batch - end 内,如果单条语句中包含 end 必须用双引号括起来,如:begin batch select "end" from table end

func NewMQLSpliterWithOption

func NewMQLSpliterWithOption(reader io.Reader, regxdelimeter *regexp.Regexp, excludeflags []*ExcludeFlag) *MQLSpliter

分号分隔多条MQL语句 支持 begin batch - end 已知问题:begin batch - end 内,如果单条语句中包含 end 必须用双引号括起来,如:begin batch select "end" from table end

func (*MQLSpliter) Next

func (me *MQLSpliter) Next() (mql string, hasnext bool, err error)

func (*MQLSpliter) NextMQL

func (me *MQLSpliter) NextMQL() (mql string, fromline, toline, fromchar, tochar int, hasnext bool, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL