1、对于给定的输入文件,打印出所有包含字符串“two”的行。代码如下:>> filename = ‘programming_quotes.txt’ >> word = // ##### 在此处添加你的解决方案 >> puts File.foreach(filename).grep(word) 请补充代码中的 word 赋值部分。
word = /two/
2、对于给定的输入字符串,打印所有不包含字符串“2”的行。给定输入字符串为:purchases = %q{items qty apple 24 mango 50 guava 42 onion 31 water 10},需要补充正则表达式 num,利用该正则表达式过滤出不包含“2”的行。
/2/
3、对于给定的输入字符串 ‘bred red spread credible’,仅将整个单词“red”替换为“brown”,请使用 gsub 方法完成替换。
words.gsub(/\bred\b/, ‘brown’)
4、对于给定的输入列表,过滤出所有包含被单词字符包围的 42 的元素。
words.grep(/\w42\w/)
5、对于给定的输入字符串,仅当单词“mall”位于行首时,替换整个单词“mall”。
para = %q{ball fall wall tallmall call ball pall16wall mall ball fall}
expr = /^mall/ # 匹配行首的 mall
puts para.gsub(expr, '替换后的内容') # 将 '替换后的内容' 替换为你想替换成的内容
6、对于给定的 URL,统计包含完整单词 removed、rested、received、replied、refused 或 retired 的总行数。代码如下:先引入 ‘open-uri’ 库,设置链接为 ‘https://www.gutenberg.org/cache/epub/60/pg60.txt’,定义一个空的正则表达式变量 words,初始化计数器 cnt 为 0,使用 open 方法打开链接,逐行读取文件,若某行匹配正则表达式则计数器加 1,最后输出计数器的值。请指出代码中需要修改的地方。
下面是给定的【文本内容】:
需要将 words = // 替换为 words = /\b(removed|rested|received|replied|refused|retired)\b/ ,以便正确匹配完整单词。
7、使用相同逻辑将给定的输入字符串转换为预期输出。输入字符串 str1 为 ‘(9 - 2) * 5 + qty / 3’,预期输出为 ‘35 + qty / 3’;输入字符串 str2 为 ‘(qty + 4) / 2 - (9 - 2) * 5 + pq / 4’,预期输出为 ‘(qty + 4) / 2 - 35 + pq / 4’。
可以使用正则表达式匹配 (9 - 2) * 5 并将其替换为 35 。代码如下:
str1 = '(9-2)*5+qty/3'
str2 = '(qty+4)/2-(9-2)*5+pq/4'
# 定义替换逻辑
result1 = str1.gsub('(9-2)*5', '35')
result2 = str2.gsub('(9-2)*5', '35')
puts result1 # 输出: 35+qty/3
puts result2 # 输出: (qty

最低0.47元/天 解锁文章
10万+

被折叠的 条评论
为什么被折叠?



