ruby

Ruby正则表达式能处理多行文本吗

小樊
82
2024-10-24 08:00:28
栏目: 编程语言

是的,Ruby中的正则表达式可以处理多行文本。在Ruby中,要处理多行文本,需要在正则表达式的开头和结尾分别添加/m修饰符。这个修饰符表示“多行模式”,它会让正则表达式在处理文本时考虑每一行文本的换行符。

例如,假设我们有一个包含多行文本的文件,我们想要在其中查找所有的“apple”单词,可以使用以下代码:

text = <<-TEXT
Apple is a fruit.
I like to eat apples.
Apple is healthy.
TEXT

pattern = /apple/m
matches = text.scan(pattern)

puts matches.inspect

在这个例子中,/apple/m是一个正则表达式,用于匹配“apple”单词。m修饰符表示这是一个多行模式的正则表达式。text.scan(pattern)方法会返回一个包含所有匹配项的数组。在这个例子中,输出结果应该是["Apple", "apples"]

0
看了该问题的人还看了