10

正規表現を使用して、文字列の末尾にある数字と一致させようとしています。たとえば、文字列は次のようになります。

var foo = '101*99+123.12'; // would match 123.12
var bar = '101*99+-123';   // would match -123
var str = '101*99+-123.';  // would match -123.

これは私がこれまでに得たものですが、小数点がない場合は文字列全体に一致するようです:

foo.match(/\-?\d+.?\d+?$/);

私はこれを次のように解釈します:

  • \-?: オプションの「-」記号
  • \d+:1桁以上
  • .?: オプションの小数点
  • \d+?: 任意の小数点以下 1 桁以上
  • $: 文字列の末尾に一致

私は何が欠けていますか?

4

4 に答える 4