我想用破折号替换所有非字母数字字符序列。下面是我写的一小段内容。但是它不起作用,我完全不知道为什么。谁能解释一下为什么代码片段的行为不如我预期的那样,实现此目的的正确方法是什么?package mainimport ( "fmt" "regexp" "strings")func main() { reg, _ := regexp.Compile("/[^A-Za-z0-9]+/") safe := reg.ReplaceAllString("a*-+fe5v9034,j*.AE6", "-") safe = strings.ToLower(strings.Trim(safe, "-")) fmt.Println(safe) // Output: a*-+fe5v9034,j*.ae6}
1 回答
Cats萌萌
TA贡献1805条经验 获得超9个赞
您的字符串不匹配正斜杠。
package main
import (
"fmt"
"log"
"regexp"
"strings"
)
func main() {
reg, err := regexp.Compile("[^A-Za-z0-9]+")
if err != nil {
log.Fatal(err)
}
safe := reg.ReplaceAllString("a*-+fe5v9034,j*.AE6", "-")
safe = strings.ToLower(strings.Trim(safe, "-"))
fmt.Println(safe) // Output: a*-+fe5v9034,j*.ae6
}
输出
a-fe5v9034-j-ae6
- 1 回答
- 0 关注
- 278 浏览
添加回答
举报
0/150
提交
取消