Ruby on rails 用于从字符串中获取单个字符的正则表达式

Ruby on rails 用于从字符串中获取单个字符的正则表达式,ruby-on-rails,ruby,regex,regular-language,Ruby On Rails,Ruby,Regex,Regular Language,我有一些字母数字字符串。由此我必须找出那些满足以下条件的字符串 整个字符串中应该只有一个字符,即“e” “e”不应出现在字符串的开头或结尾,而应出现在中间 我想选择像43e42345345e5 我可以在ruby中做同样的事情,但由于我有大量字符串,我只想使用正则表达式这应该可以: /\A[^a-z]+e[^a-z]+\z/i 这意味着: 开头 至少一个非字母 “e” 至少一个非字母 结束 下面是一个例子: 如果要匹配字符串中的行,请使用/^[^a-z]+e[^a-z]+$/im。听起来像

我有一些字母数字字符串。由此我必须找出那些满足以下条件的字符串

  • 整个字符串中应该只有一个字符,即“e”
  • “e”不应出现在字符串的开头或结尾,而应出现在中间
  • 我想选择像
    43e42345345e5

    我可以在ruby中做同样的事情,但由于我有大量字符串,我只想使用正则表达式

    这应该可以:

    /\A[^a-z]+e[^a-z]+\z/i
    
    这意味着:

    • 开头
    • 至少一个非字母
    • “e”
    • 至少一个非字母
    • 结束
    下面是一个例子:


    如果要匹配字符串中的行,请使用
    /^[^a-z]+e[^a-z]+$/im

    听起来像是简单的
    /\a\d+e\d+\z/
    就足够了。这没有任何意义。如果整个字符串中只有一个字符,则
    e
    必须出现在开头和结尾。如果开头或结尾不存在,则必须有其他字符,然后字符串中至少有两个字符。您的要求是相互矛盾的:一个字符串不可能只包含一个字符,而同时包含多个字符。您发布的示例违反了约束条件#1,因为它们包含字符
    2
    3
    4
    5
    ,此外还有
    e
    2,3,4,5
    ,我将其视为数字