文章插图
我们知道,排序功能,List中有、Table中也有,单纯的数字排序在我们这个问题没用意义,我们需要生成一列于字符串等长的随机数,然后通过表格排序随机数,实现字符的随机排列 。
我们会用到函数:
· Text.ToList:将字符串变成列表
· List.Random:生成随机数列表
· List.Count:列表元素计数
· Table.Sort:表排序
· Text.Combine:文本合并
这过程中,还需要有表格转换函数,是使用Recoard.ToTable、还是Table.FormColumns?
Recoard.ToTable我们用字符作为Record的Name,随机数作为Record的Value,然后转换成表格,排序实现随机排列,下面分步来做:
Text.ToList:
同样长度的随机数列表:
组成Record:
转成表格:
Value列排序:
提取Name列合并文本:
似乎很顺利就完成了,字符串内部的乱序,我们修改一下数据源看看:
看看能不能实现乱序:
“无边落木萧萧下”,Record的Name不能重复,所以报错 。
所以上面的过程适合非重复字符串的乱序 。如果有重复的字符,我们还需要修改我们的过程 。
添加列的方式行不通,我做过测试,先把字符列表转换成表格,然后添加随机数列,即使指定了数据类型,也无法实现排序:
所以这个随机数列,需要在组表之前就生成,不能后添加 。
Table.FormColumns用之前做过的字符串列表与随机数列表组成表格:
排序:
我们整理一下,把文本合并:
即使是标点符号重复,也不要紧,都能实现整个字符串内的字符随机排列 。
我们总结一下,最后这种方法更通用一些,要注意的地方就是随机数的生成,必须是在表格生成之前,如果是后添加的随机数列,不能排序,具体啥原因咱也不了解 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 图 彼岸花的真正故事:因开和落各一千年则永不相见
- 360和火绒到底谁更好用 火绒安全和360哪个好
- 全文 黑芝麻的7大功效和作用介绍
- 图 唐宋八大家是哪八位:名字及简介和代表作品
- 跳绳和跑步哪个效果好呢?
- 防火玻璃和钢化玻璃的区别
- 玛卡有哪些功效和辨别方法 玛咖片的功效与作用
- apec是什么组织和你我生活有啥关系?
- 户籍和生源地有什么区别? 户籍地址是填什么地址
- 老婆和别的男人开房被抓 求我去救她