1

私は正規表現を初めて使用し、正規表現を使用して XYZ の後に X130503XYZ662050,89 から662050,89を抽出しようとしています。

 [a-zA-Z](\d+|,\d)

662050 しか取得できません。正規表現で 662050,89 を取得するにはどうすればよいですか? 前もって感謝します

XYZ は任意の文字にすることができ、いつでも行 XYZ 、 XXYYZ などにすることができることに注意してください

4

5 に答える 5

2

入力/単語 (JavaScript) の末尾から照合を試みることができます。

[0-9,]*(?:$|\z)
于 2013-07-03T08:50:21.700 に答える
2

この正規表現 (\d+,\d+) を使用してみてください。XY 内および Z の前に浮動小数点数がない場合、問題なく動作します。これが役立つことを願っています。

編集: 浮動小数点数は Z の後にある必要があることに注意してください。そうでない場合は、[\d+,]*($|\z) を使用する必要があります。

于 2013-07-03T08:48:04.820 に答える
1

この正規表現を試してください...

/\w([\d\,]+)/
于 2013-07-03T11:50:14.957 に答える
1

この XYZ(.*) を使用する場合は、662050,89 の一致のグループ 1 を取ります

または、これを使用する場合 ([a-zA-Z]+)(\d+[|,]\d+) は、662050,89 の一致のグループ 2 を取得します。

最初のケースでは、'XYY' の後の数字だけを気にし、2 番目のケースでは、'XYZ' とその後の数字の両方を気にします。

于 2013-07-03T08:48:59.590 に答える