我想regexp从Go标准库中进行扩展,以便能够定义自己的方法。我使用以下结构:
type RichRegexp struct {
*regexp.Regexp
}
如您所见,此结构只包含wrapd regexp.Regexp。所以我想知道是否可以用一个简单的类型声明来代替它:
type RichRegexp regexp.Regexp
但是,我该如何编写以下函数呢?
func Compile(expression string) (*RichRegexp, error) {
regex, err := regexp.Compile(expression)
if err != nil {
return nil, err
}
return &RichRegexp{regex}, nil // How to do this?
}
我尝试转换regexp.Regexp为我的文件RichRegexp,但未编译。返回包装基本类型的自定义类型的一般模式是什么?
相关分类