我想将编译的正则表达式传递给golang函数,例如
package main
import "fmt"
import "regexp"
func foo(r *Regexp) {
fmt.Println(r)
}
func main() {
r, _ := regexp.Compile("p([a-z]+)ch")
foo(r)
}
Run Code Online (Sandbox Code Playgroud)
但它显示"未定义:正则表达式"
任何提示?
使用合格的标识符.例如,
package main
import "fmt"
import "regexp"
func foo(r *regexp.Regexp) {
fmt.Println(r)
}
func main() {
r, _ := regexp.Compile("p([a-z]+)ch")
foo(r)
}
Run Code Online (Sandbox Code Playgroud)
输出:
p([a-z]+)ch
Run Code Online (Sandbox Code Playgroud)
限定标识符是使用包名称前缀限定的标识符.包名称和标识符都不能为空.
Run Code Online (Sandbox Code Playgroud)QualifiedIdent = PackageName "." identifier .
限定标识符访问必须导入的不同包中的标识符.必须在该包的包块中导出和声明标识符.
Run Code Online (Sandbox Code Playgroud)math.Sin // denotes the Sin function in package math