我正在尝试生成一个随机字符串,这些是我发现的可能性:
Random.nextPrintableChar()
,打印字母,数字,标点符号
Random.alphanumeric.take(size).mkString
,打印字母和数字
Random.nextString(1)
,几乎每次打印中国字符大声笑
随机是scala.util.Random
size
是一个国际
第二种选择几乎完成了这项工作,但我需要从一封信开始.我找到了,Random.nextPrintableChar()
但它也打印标点符号.
解决方案是什么?
到目前为止我的解决方案是
val low = 65 // A val high = 90 // Z ((Random.nextInt(high - low) + low).toChar
受Random.nextPrintableChar
实施启发:
def nextPrintableChar(): Char = { val low = 33 val high = 127 (self.nextInt(high - low) + low).toChar }
pedrorijo91.. 8
找到更好的解决方案:
Random.alphanumeric.filter(_.isLetter).head
jwvh 评论的更好的解决方案:Random.alphanumeric.dropWhile(_.isDigit)
找到更好的解决方案:
Random.alphanumeric.filter(_.isLetter).head
jwvh 评论的更好的解决方案:Random.alphanumeric.dropWhile(_.isDigit)