Ruby 265式

  • 第1章 Ruby的语法.
    1. 001 常值(literal) 2
    2. 002 运算符 6
    3. 003 变量与常数 9
    4. 004 代入 11
    5. 005 程序语句的分段 12
    6. 006 备注 13
    7. 007 真假值与条件判断 14
    8. 008 循环 17
    9. 009 调用方法 19
    10. 010 区块(block) 20
    11. 011 方法(Method)定义 21
    12. 012 限制方法的调用 22
    13. 013 类别(Class)定义 23
    14. 014 模块(Module)定义 24
    15. 015 特殊方法 25
    16. 016 例外处理 26
    17. 017 alias与undef 27
    18. 018 保留字 28
  • 第2章 字符串
    1. 019 选择适当的字符串常值 30
    2. 020 设置默认的文字编码 32
    3. 021 变换文字编码 34
    4. 022 推测文字编码 37
    5. 023 复制字符串 39
    6. 024 重复字符串 40
    7. 025 取得字符串长度 41
    8. 026 查找字符串 42
    9. 027 查询正则表达式是否匹配字符串的开头/结尾 45
    10. 028 匹配单字 46
    11. 029 以特定的文字编码来进行正则表达式匹配 48
    12. 030 在正则表达式“.”中匹配\n 50
    13. 031 从上次匹配的部分开始继续匹配 51
    14. 032 计算特定的文字、字符串出现的次数 53
    15. 033 计算字符的出现频率 55
    16. 034 比较字符串 56
    17. 035 对空白进行匹配 57
    18. 036 判断字符串是否为空行 58
    19. 037 判断是否为表示数值的字符串 59
    20. 038 将字符串变换为数值 60
    21. 039 判断字符为大写或小写 62
    22. 040 将字母变换为大写/小写 63
    23. 041 取出字符串的一部分 65
    24. 042 取出正则表达式匹配的部分 67
    25. 043 取出正则表达式匹配部分的前后字符串 69
    26. 044 查询包含特定文字部分的长度 70
    27. 045 将字符串分割为段落 71
    28. 046 将字符串分割为行 73
    29. 047 将字符串分割为单字 74
    30. 048 以正则表达式来分割字符串 76
    31. 049 处理字符串的个别文字 78
    32. 050 处理字符串的单一字节 79
    33. 051 链接字符串 80
    34. 052 置换字符串的一部分内容 81
    35. 053 跳脱字符/除去跳脱字符 83
    36. 054 除去字符串的一部分 85
    37. 055 取出行尾的换行字符 87
    38. 056 除去字符串开头/结尾的空白 89
    39. 057 变换Tab与半角空格符 91
    40. 058 变更缩排 92
    41. 059 将Here Document缩排后编写 94
    42. 060 在字符串结尾加上字符串 95
    43. 061 对字符串的一部分进行破坏性删除 97
    44. 062 在字符串中间破坏性地插入字符串 99
    45. 063 字符与字符编码相互变换 101
    46. 064 将字符串依n个文字来分割 103
    47. 065 将字符串切出最大n字节的部分字符串 104
    48. 066 将字符串切出最大n个文字的部分字符串 106
    49. 067 将字符串切出最大n位的部分字符串 107
    50. 068 以特定文字来隐藏部分字符串 108
    51. 069 建立信息摘要(Message Digest) 109
    52. 070 判断字符串是否可作为正确的正则表达式 111
    53. 071 跳脱正则表达式的Meta文字 112
    54. 072 判断字符串是否同时与多个正则表达式匹配 113
    55. 073 分割正则表达式来记述 114
    56. 074 正则表达式集 116
    57. 075 将字符串整形为各段落 118
    58. 076 解析各种文字格式 119
    59. 077 处理以“,”来分隔的数据(CSV) 122
    60. 078 解析XML 124
    61. 079 解析YAML 127
    62. 080 处理HTML 129
    63. 081 自动补完单字 132
    64. 082 判断是否为有效的E-mail地址 134
  • 第3章 数组(Array)与哈希(Hash)
    1. 083 建立数组 136
    2. 084 复制数组 138
    3. 085 建立多维数组 139
    4. 086 依序处理数组及哈希的所有元素 140
    5. 087 并行处理多个数组 141
    6. 088 多维数组的循环 143
    7. 089 取得数组的元素 144
    8. 090 改变数组的元素 146
    9. 091 删除数组的元素 147
    10. 092 在数组的开头/结尾加入元素 148
    11. 093 取出并除去数组开头/结尾的元素 149
    12. 094 置换数组的元素 150
    13. 095 随机取得数组中的元素 151
    14. 096 随机排列数组中的元素 152
    15. 097 查询数组的元素个数 153
    16. 098 查询数组中元素的出现次数 154
    17. 099 从数组中一次取出多个元素 155
    18. 100 取得数组中索引与元素的配对组 156
    19. 101 将数组中元素填入相同的值 157
    20. 102 由数组中取出并除去重复的元素 158
    21. 103 取得数组中满足条件的元素 159
    22. 104 查找数组的元素 160
    23. 105 比较两个数组 161
    24. 106 找出两个数组中相同的元素 162
    25. 107 取出两个数组间的差 163
    26. 108 连接数组 164
    27. 109 将数组中元素的顺序反转 165
    28. 110 将一定范围的整数作为数组的元素 166
    29. 111 将数组作为(以“,”)连接的字符串 167
    30. 112 二元查找法 168
    31. 113 建立哈希的键值类别 169
    32. 114 在哈希中加入元素 170
    33. 115 查询哈希内键值是否存在 171
    34. 116 删除哈希的元素 172
    35. 117 显示哈希的内容 173
    36. 118 将哈希元素以插入顺序取出 174
    37. 119 建立单一键可对应多值的哈希 176
    38. 120 交替哈希的键与值 177
    39. 121 排序数组及哈希 178
    40. 122 合并哈希 180
    41. 123 找出两个哈希中都有的键/只有一个哈希才有的键 181
    42. 124 设置默认值 182
    43. 125 使用巨大的离散数组 183
    44. 126 建立具有Collection特性的类别 184
    45. 127 使用堆栈与队列 185
  • 第4章 文件与目录
    1. 128 将文件名分割为其组成元素 188
    2. 129 从相对路径求出绝对路径 189
    3. 130 判断路径名是否吻合样式(Pattern).. 190
    4. 131 取得目录与文件一览 192
    5. 132 取得目前所在的目录名称 194
    6. 133 变更当前目录 195
    7. 134 求得执行脚本所处的路径 196
    8. 135 更改文件名 197
    9. 136 复制文件 198
    10. 137 删除文件 200
    11. 138 判断文件是否可读取、可写入 201
    12. 139 判断文件是否存在/判断其种类 202
    13. 140 取得文件属性 203
    14. 141 变更文件属性 205
    15. 142 建立链接 207
    16. 143 判断两个文件是否相同 209
    17. 144 建立目录 211
    18. 145 对目录内的所有文件进行递归处理 212
    19. 146 递归复制目录 213
    20. 147 删除目录 214
    21. 148 事先确认文件操作 215
    22. 149 新增名称不重复的文件 216
  • 第5章 输入/输出
    1. 150 打开文件 219
    2. 151 以行为单位来处理文件 220
    3. 152 读取文件内容 222
    4. 153 建立新的文件 224
    5. 154 在文件末尾加入数据 226
    6. 155 以单行指令(One-liner)更新文件 227
    7. 156 使输出操作与文件更新同步 228
    8. 157 计算文件的行数 229
    9. 158 将文件由文件末尾开始处理至行单位中 230
    10. 159 读取正在写入的文件 232
    11. 160 建立暂存文件 233
    12. 161 锁定文件 234
    13. 162 将文件转为十六进制 235
    14. 163 在文件中插入一行 236
    15. 164 以二进制模式写入文件 238
    16. 165 处理固定长度的记录 239
    17. 166 切割文件大小 241
    18. 167 删除文件开头的n行 242
    19. 168 删除文件末尾的n行 243
    20. 169 将标准输入/输出接替至文件 245
    21. 170 复制I/O对象 246
    22. 171 以printf来格式化输出 248
  • 第6章 数值
    1. 172 格式化数值 251
    2. 173 位运算 253
    3. 174 在二进制、八进制、十进制、十六进制间相互转换 254
    4. 175 将数值每三位以“,”区隔开来 255
    5. 176 指定次数并重复处理 256
    6. 177 求解最大值、最小值 257
    7. 178 求解数值的总和 258
    8. 179 求绝对值 259
    9. 180 求除法的余数 260
    10. 181 求解指数 262
    11. 182 求最大公因数及最小公倍数 263
    12. 183 求解平方根 264
    13. 184 计算三角函数 265
    14. 185 将直角坐标系转换为极坐标系 266
    15. 186 进行对数计算 267
    16. 187 对浮点数进行四舍五入等处理 268
    17. 188 比较浮点数 270
    18. 189 取得随机数 271
    19. 190 使用矩阵 272
    20. 191 使用复数 274
    21. 192 使用有理数 275
  • 第7章 日期与时间
    1. 193 查询现在的日期与时间 277
    2. 194 由日期时间中取出月份、星期几等 279
    3. 195 日期时间与Epoch秒相互转换 280
    4. 196 求两个日期时间的差 282
    5. 197 格式化日期时间 283
    6. 198 将字符串转换为日期时间 285
    7. 199 求出由1月1日起到目前所经过的天数 286
    8. 200 判断闰年 287
    9. 201 求出一个月最后一天的日期 288
    10. 202 判断是否为假日 289
    11. 203 求出“本月第三个星期一”的日期 290
  • 第8章 环境相关
    1. 204 将Ruby脚本做成一般指令 292
    2. 205 暂时性地在做成指令的Ruby脚本上加入选项后执行 295
    3. 206 取得命令行的参数 296
    4. 207 解析命令行选项 298
    5. 208 存取环境变量 301
    6. 209 让脚本作为指令或者函数库都可以执行 302
    7. 210 控制Ruby的函数库加载器(Library Loader) 303
    8. 211 对Ruby脚本进行除错 304
    9. 212 取得用户及群组相关信息 307
    10. 213 切换使用者ID、群组ID 310
    11. 214 存取Windows登录文件(Registry) 312
    12. 215 调用系统函数库的函数 313
  • 第9章 程序间通信
    1. 216 暂时停止脚本 317
    2. 217 测量脚本的运行时间 318
    3. 218 启动指令 320
    4. 219 产生子程序(fork) 322
    5. 220 设置信号处理器(Signal Handler) 323
    6. 221 Deamo 324
    7. 222 控制Windows的应用程序 325
    8. 223 取得本机名称 327
    9. 224 变换机器名称以及IP位置 328
    10. 225 建立TCP客户端 329
    11. 226 制作一个TCP服务器 330
    12. 227 建立HTTP客户端 332
    13. 228 存取其他程序的Ruby对象 334
  • 第10章 CGI
    1. 229 由窗体中取出输入值 337
    2. 230 取出Query字符串 338
    3. 231 使用Session 339
    4. 232 处理Cookie 341
    5. 233 参照Meta变量 343
    6. 234 输出HTML头文件 344
    7. 235 对URL进行编码/反编码 345
    8. 236 跳脱/不跳脱HTML 346
    9. 237 使用污染模式(taint mode) 347
    10. 238 预防XSS(Cross Site Scripting) 349
    11. 239 在HTML中嵌入Ruby脚本 351
    12. 240 上传文件 352
  • 第11章 对象
    1. 241 判断对象是否相同 354
    2. 242 复制对象 356
    3. 243 查询对象的类别 357
    4. 244 将对象转换为字符串 359
    5. 245 将对象转换为数值 360
    6. 246 将对象转换为数组 362
    7. 247 将对象存储在文件中 363
    8. 248 多重继承 365
    9. 249 委托方法 366
    10. 250 委托区块 368
    11. 251 建立可作为String或Array来操作的类别 369
    12. 252 使用无名函数 371
    13. 253 多载方法 372
    14. 254 使用关键词参数 374
    15. 255 定义模块函数 375
    16. 256 定义类别方法的别名 376
    17. 257 将实例变量依各个类别来设为private 377
    18. 258 查询方法是否存在于对象中 379
    19. 259 取得对象中定义的方法列表 381
    20. 260 保有兼容性并改变方法名 383
    21. 261 保有兼容性并改变参数的个数 384
    22. 262 保有兼容性并加上/移除区块 386
    23. 263 保持兼容性并更改类别名 387
    24. 264 保有兼容性并更改函数库名 388
    25. 265 在旧版Ruby中使用新版Ruby的方法 389
    26. 266 将文件当作Ruby脚本来载入 390
    27. 267 将字符串当作Ruby脚本来执行 391
    28. 268 替代脚本文件名/行编号 392
  • 附录A
    1. A01 Web上的资源 394
    2. A02 指令列选项 395
    3. A03 Ruby参考的环境变量 397
    4. A04 Ruby标准类别及函数库 398
    5. A05 printf格式化字符串 401
    6. A06 pack模板字符串... 403