| 赞 | 0 |
| VIP | |
| 好人卡 | |
| 积分 | 3 |
| 经验 | |
| 最后登录 | 2019-10-13 |
| 在线时间 | 953 小时 |
- 梦石
- 0
- 星屑
- 310
- 在线时间
- 953 小时
- 注册时间
- 2007-4-25
- 回帖
- 798
|
发表于 2011-7-12 08:52:40
|
显示全部楼层
1、把一个文本在第一行处随机空掉100-150行,这样的脚本怎么写? - str = 'asdf'
- str[0, 0] = "\n" * (rand(51) + 100)
复制代码 用 String#[]= 在字符串开头插入,rand 取伪随机数。这里 rand(51) + 100 是同时包括 100 和 150 这两个临界。
2、如果这个文本没有文字(但包括空行)则随机空300-360行。如果有文字则空100-150行。这个又怎么写?
匹配正则表达式 /\S/ 的字符串就是有非空白字符的。
- str = 'asdf'
- range = str =~ /\S/ ? 100..150 : 300..360
- str[0, 0] = "\n" * (rand(range.end - range.begin + 1) + range.begin)
复制代码 |
|