查看: 1408|回复: 1

[已经解决] 请教关于文本空行问题

  [复制链接]
梦石
0
星屑
167
在线时间
434 小时
注册时间
2009-1-1
回帖
557
发表于 2011-7-11 20:56:49 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
1、把一个文本在第一行处随机空掉100-150行,这样的脚本怎么写?
2、如果这个文本没有文字(但包括空行)则随机空300-360行。如果有文字则空100-150行。这个又怎么写?
最近在研究XAS
梦石
0
星屑
310
在线时间
953 小时
注册时间
2007-4-25
回帖
798
发表于 2011-7-12 08:52:40 | 显示全部楼层
1、把一个文本在第一行处随机空掉100-150行,这样的脚本怎么写?
  1. str = 'asdf'
  2. str[0, 0] = "\n" * (rand(51) + 100)
复制代码
用 String#[]= 在字符串开头插入,rand 取伪随机数。这里 rand(51) + 100 是同时包括 100 和 150 这两个临界。

2、如果这个文本没有文字(但包括空行)则随机空300-360行。如果有文字则空100-150行。这个又怎么写?

匹配正则表达式 /\S/ 的字符串就是有非空白字符的。

  1. str = 'asdf'
  2. range = str =~ /\S/ ? 100..150 : 300..360
  3. str[0, 0] = "\n" * (rand(range.end - range.begin + 1) + range.begin)
复制代码

点评

2问是“空行”,split吧……  发表于 2011-7-12 09:36
su@rpg.blue:~> repeat 1 fortune
Matz is nice, so we are nice.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部