Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在寻找一个简单的 ruby reg ex 来匹配三个字符中的一个且仅一个。例如:“a”或“b”或“c”但不是“ab”、“ac”等。
根据 rubular.com,我尝试过的 /[abc]/ 或 /a|b|c/ 不起作用,因为它们也匹配“ab”、“ac”等。我也尝试过使用 ^ 和 $ 放置,但没有奏效。
我是红宝石新手,一定缺少一些简单的东西。请帮忙。谢谢!
[1] pry(main)> "a" =~ /^[a-c]$/ => 0 [2] pry(main)> "ac" =~ /^[a-c]$/ => nil
但是,==如果您特别需要匹配单个字符,为什么不直接使用呢?如果您需要对角色做一些事情,您可以将所有内容全部汇总并完全跳过正则表达式。
==
如果你想要的只是捕获重复相同字符的字符串,你可以尝试这样的事情
^([a]+|[b]+|[c]+)$