gpt4 book ai didi

ruby - 如何编写正则表达式以同时匹配和捕获?

转载 作者:太空宇宙 更新时间:2023-11-03 17:54:11 25 4
gpt4 key购买 nike

我有一个像这样工作的伪代码方法:

def my_method(file)
while(line = file.gets)
case line
when /^TEXT (.*)/
puts line + <the text captured in the parenthesis of the regex>
else
.....
end
end
end

有什么办法吗?

编辑:

示例字符串如下:

TEXT a sample text

我想要正则表达式捕获的“示例文本”。我知道这不是执行此操作的正确方法,但这只是一个演示,即“YYYY-MM-DD format date in shell script”来弄清楚如何以您想要的任何格式获取日期。

可以找到昨天的日期:

date -d '1 day ago' +'%Y/%m/%d'

来自“How To Get Yesterday’s Date using BASH Shell Scripting”。

/替换为-_,然后传入Ruby语句。

编辑:投票给另一个人。他们的回答居然有代码。

最佳答案

您正在寻找的是puts "line#{$1}"。伪全局变量 $1$2$3 等指的是最后一次 Regexp 匹配的捕获组。 ($~ 指的是 MatchData 本身,如果您想使用它的话。)

关于ruby - 如何编写正则表达式以同时匹配和捕获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17623731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com