问题标签 [rune]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
casting - 在 Go 中将 int 转换为 rune
假设我有一个表示有效 unicode 代码点的 int64 变量(或其他整数大小),并且我想在 Go 中将其转换为符文,我该怎么办?
在 CI 中会使用类型转换,例如:
但是在 Go 中,类型断言不起作用:
建议?
string - 如何在 Go 中通过符文迭代字符串?
我想这样做:
但事实证明,它str[i]
具有类型byte
( uint8
) 而不是rune
.
如何通过符文而不是字节来迭代字符串?
string - 去整理一片符文?
我无法按字符对字符串进行排序(要检查两个字符串是否是字谜,我想对它们进行排序,并检查是否相等)。
我可以像这样得到[]rune
字符串的表示s
:
我可以像这样对整数进行排序
但这rune
只是一个别名,int32
所以我应该可以打电话
但是,我收到错误:
那么...如何对 int32、int64 或 int* 的切片进行排序?
编辑:我确实整理了我的符文,但是男孩,这很难看。
所以基本上,如果你有一个切片,你必须将它包装在一个实现 sort.Interface
. 所有这些实现都将具有完全相同的方法体(如sort.IntSlice
和sort.Float64Slice
)。如果这真的是多么丑陋,那么他们为什么不在包中提供这些 WhatSlice 包装器sort
呢?缺乏仿制药现在开始受到非常严重的伤害。必须有更好的方法来分类事物。
go - 什么是符文?
rune
Go中的 a 是什么?
我一直在谷歌搜索,但 Golang 只在一行中说:rune
是int32
.
但是整数怎么会像交换案例一样到处使用呢?
下面是一个函数swapcase。什么是<=
和-
?
为什么没有switch
任何论据?
&&
应该是什么意思,但什么是r <= 'z'
?
其中大部分来自http://play.golang.org/p/H6wjLZj6lW
我知道这是映射rune
到,string
以便它可以返回交换的字符串。但我不明白这里究竟是如何工作rune
的byte
。
unicode - 构建 ngram 频率表并处理多字节符文
我目前正在学习 Go,并且取得了很大的进步。我这样做的一种方法是将过去的项目和原型从以前的语言移植到新的语言。
现在,我正忙于使用我不久前在 Python 中制作原型的“语言检测器”。在这个模块中,我生成了一个 ngram 频率表,然后我在其中计算给定文本和已知语料库之间的差异。
这允许人们通过返回给定 ngram 表的两个向量表示的余弦来有效地确定哪个语料库是最佳匹配。耶。数学。
我有一个用 Go 编写的原型,可以完美地处理普通的 ascii 字符,但我非常希望它能够支持 unicode 多字节。这就是我正在努力的地方。
这是我正在处理的一个简单示例:http ://play.golang.org/p/2bnAjZX3r0
我只发布了表格生成逻辑,因为一切都已经很好了。
正如您通过运行代码片段所看到的,第一个文本运行良好并构建了一个准确的表格。第二个文本是德语,其中有几个双字节字符。由于我构建 ngram 序列的方式,并且由于这些特定符文由两个字节组成,因此出现了 2 个 ngram,其中第一个字节被截断。
有人可以发布更有效的解决方案,或者至少可以指导我完成修复吗?我几乎可以肯定我已经过度分析了这个问题。
我计划开源这个包并使用 Martini 将其实现为服务,从而提供一个简单的 API,人们可以使用它来进行简单的语言计算。
一如既往,谢谢!
go - 将符文转换为int?
在下面的代码中,我逐个遍历一个string
rune,但实际上我需要一个 runeint
来执行一些校验和计算。我是否真的需要将 a 编码rune
为 a []byte
,然后将其转换为 a string
,然后用于Atoi
从 a 中int
取出a rune
?这是惯用的方法吗?
string - Go中子字符串的字符位置
如何知道子字符串在字符串中的位置,以字符(或符文)而不是字节为单位?
strings.Index(s, sub)
将以字节为单位给出位置。使用 Unicode 时,它与符文中的位置不匹配:http ://play.golang.org/p/DnlFjPaD2j
结果:14。预期:7
当然,我可以手动转换并s
查找子切片,但有更好的方法吗?sub
[]rune
与此相关,要获取字符串的第一个n
字符,我正在这样做:string([]rune(s)[:n])
. 这是最好的方法吗?
string - 为什么这种从符文字符串到整数的转换不起作用?
我有以下代码:
我知道符文,在我试图解决这个问题的最后几个小时里,我读了很多关于它们的内容......
结果是:
2
strconv.ParseInt:解析“\x002”:语法无效
0
为什么我不能将字符串转换为整数?
任何帮助表示赞赏!
regex - 正则表达式将字符串golang中的子字符串更改为大写
我需要用相同单词的大写替换字符串。到目前为止,我可以从包含我的字符串的文本文件中搜索子字符串,并将“apple”或“Apple”或“ApPle”之类的单词替换为“APPLE” ”。当字符串是“那个菠萝苹果 adamsApple applepie 的味道吗?”时存在问题,我的搜索关键字存在于另一个词之间,因此无法找到和转换。
我的最终工作代码:
unicode - 从 rune 获取 unicode 类别
我正在寻找一种从Go中获取 unicode 类别( RangeTable
)的方法。rune
例如,字符a
映射到Ll
类别。该unicode
包指定了所有类别(http://golang.org/pkg/unicode/#pkg-variables),但我没有看到任何从给定的类别中查找类别的方法rune
。我是否需要使用适当的偏移量手动RangeTable
构造rune
?