业务中,中文标点符号常常是一个问题,在涉及到一些文本相关的逻辑时,为了避免复杂的逻辑,我们一般统一将中文标点转换为英文标点,再进行相关计算。
示例
var punctuationMap = map[rune]rune{
8216: 39, // '
8217: 39, // '
8220: 34, // "
8221: 34, // "
12290: 46, // .
12304: 91, // [
12305: 93, // ]
65281: 33, // !
65288: 40, // (
65289: 41, // )
65292: 44, // ,
65306: 58, // :
65307: 59, // ;
65311: 63, // ?
}
func PunctuationToEn(text string) string {
text = strings.Map(func(r rune) rune {
if v, ok := punctuationMap[r]; ok {
return v
}
return r
}, text)
return text
}
func TestOther(t *testing.T) {
text := "中国,还!在。?!,;:“”‘'()【】"
t.Log(text)
t.Log(PunctuationToEn(text))
}
以上是提供的常见的,在展现上中英文符号类似的一些中文标点符号的转换,输出结果为:

参考
https://www.cnblogs.com/jjjs/p/4763945.html
https://blog.csdn.net/lichaobxd/article/details/105773492
⬡ 规则怪谈生成器
三步选择,一键生成完整的规则怪谈场景
欢迎使用 规则怪谈生成器 (GuiZeGT) —— 专为恐怖创作者、跑团主持人和怪谈爱好者设计的在线工具。 零AI成本 · 纯模板拼接 · 无限制生成 · 免费使用
1
选择场景
2
选择氛围
3
选择难度
✦
一键生成
-
🏚️ 12个经典场景
核心
从废弃医院到深海孤岛,丰富模板即选即用 -
👻 8种恐怖风格
氛围
心理恐怖、克苏鲁、都市传说……塑造独特惊悚感 -
📜 3档规则数量
难度
从简洁到复杂,控制怪谈的细节密度与挑战性 -
⚡ 逐条浮现生成
体验
规则逐条动态呈现,营造紧张有序的阅读节奏
⚡ 或选择一个场景快速开始
🏥 废弃医院
🚢 幽灵邮轮
🌲 黑森林
🏫 午夜学校