StringIndex对于我正在处理的 10,000 个字符串中的一个特定字符串,我收到错误消息。我真的不知道这个字符串有什么问题。我想这可能是一个特殊的性格问题。
如果我println将字符串分配给txt然后传递txt给函数,则不会出现错误。我有点困惑。
对不起,我不能发布字符串,因为它是受保护的内容,即使我复制和粘贴字符串以某种方式删除了错误源。有什么建议?
只是为了扩展。Julia 手册String中解释了 Julia 中如何表示的详细信息。
您可以使用eachindex将有效索引的迭代器获取到String. 它之所以是迭代器,是因为您无法有效地(即在 O(1) 时间内)找到字符串中第 i 个字符的索引。但是,您可以isascii在 a 上使用函数String来检查它是否仅包含 ASCII 字符(在这种情况下,字节和字符索引相同)。
另外,如果您需要获取字符串中的某个特定字符,您通常可能需要多个字符,在这种情况下first,last和chop函数很有用(实际上last(first(s, n))在位置 处给您一个字符n;尽管它不是最有效的 - 迭代eachindex会分配更少的字符) )。