正则表达式排除

时间:2012-09-19 18:34:06

标签: ruby regex

我有一个方法,它接受一个字符串并返回它找到的与正则表达式不匹配的任何字符。我似乎无法使用这种情况。

  1. 允许在任何地方使用数字
  2. 如果有负号,则必须在第一个空格中。
  3. 如果符号为以下之一,则允许在最后一个位置使用字符:

    A-R(大写)

    {或}

  4. 我有一个正则表达式,只返回符合这些要求的字符:

       [\d]|^[-]|[A-R{}]$
    

    但我似乎无法修改它以返回任何不匹配的数字。以下是一些示例:

    有效:

    12345
    -12345
    1234B
    -1234B
    1234{
    -1234}
    

    无效:

    12-345 
    12345- 
    B12345 
    12B345 
    {12345 
    12}345
    

    或任何其他角色:

    "12345 
    12345^ 
    $%^&# 
    STUVWXYZ
    

1 个答案:

答案 0 :(得分:1)

-?\d+[A-R{}]?

应该做的工作