gpt4 book ai didi

Ruby 扫描正则表达式

转载 作者:数据小太阳 更新时间:2023-10-29 07:21:02 24 4
gpt4 key购买 nike

我正在尝试拆分字符串:

"[test| blah] \n [foo |bar bar bar]\n[test| abc |123 | 456 789]"

进入以下数组:

[
["test","blah"]
["foo","bar bar bar"]
["test","abc","123","456 789"]
]

我尝试了以下方法,但不太正确:

"[test| blah] \n [foo |bar bar bar]\n[test| abc |123 | 456 789]"
.scan(/\[(.*?)\s*\|\s*(.*?)\]/)
# =>
# [
# ["test", "blah"]
# ["foo", "bar bar bar"]
# ["test", "abc |123 | 456 789"]
# ]

我需要在每个管道而不是第一个管道处拆分。实现此目的的正确正则表达式是什么?

最佳答案

 s = "[test| blah] \n [foo |bar bar bar]\n[test| abc |123 | 456 789]"
arr = s.scan(/\[(.*?)\]/).map {|m| m[0].split(/ *\| */)}

关于Ruby 扫描正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15719234/

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