生成字母数字字符串
Generate alphanumeric string
我需要一些测试公司名称,例如 "rnd_company_blah23haf9"、"rnd_company_g356fhg57" 等
是否可以做类似的事情
import scala.util.Random
val company = s"rnd_company_${Random.alphanumeric take 10 ?????}"
前提是有人可以填写??????当然可以。
你有一个例子here
scala> val x = Random.alphanumeric
x: scala.collection.immutable.Stream[Char] = Stream(Q, ?)
scala> x take 10 foreach println
Q
n
m
x
S
Q
R
e
P
B
所以你可以试试这个:
import scala.util.Random
val company = s"rnd_company_${(xx take 10).mkString}"
使用 .mkString("")
从 Stream
创建一个 String
:
scala> val company = s"rnd_company_${Random.alphanumeric take 10 mkString}"
company: String = rnd_company_BbesF0EY1o
有些内容比上述答案冗长,但这个可以帮助您限制字母表:
def randomText(textLength: Int = 10, alphabet: List[Char] = ('a' to 'd').toList) = {
(1 to textLength).toList.map { charPos =>
val randomIndex = (Math.random() * alphabet.length).floor.toInt
alphabet(randomIndex)
}.mkString("")
}
我需要一些测试公司名称,例如 "rnd_company_blah23haf9"、"rnd_company_g356fhg57" 等
是否可以做类似的事情
import scala.util.Random
val company = s"rnd_company_${Random.alphanumeric take 10 ?????}"
前提是有人可以填写??????当然可以。
你有一个例子here
scala> val x = Random.alphanumeric
x: scala.collection.immutable.Stream[Char] = Stream(Q, ?)
scala> x take 10 foreach println
Q
n
m
x
S
Q
R
e
P
B
所以你可以试试这个:
import scala.util.Random
val company = s"rnd_company_${(xx take 10).mkString}"
使用 .mkString("")
从 Stream
创建一个 String
:
scala> val company = s"rnd_company_${Random.alphanumeric take 10 mkString}"
company: String = rnd_company_BbesF0EY1o
有些内容比上述答案冗长,但这个可以帮助您限制字母表:
def randomText(textLength: Int = 10, alphabet: List[Char] = ('a' to 'd').toList) = {
(1 to textLength).toList.map { charPos =>
val randomIndex = (Math.random() * alphabet.length).floor.toInt
alphabet(randomIndex)
}.mkString("")
}