次のような文字列のリストがあります: Ø20X400
Ø と X の間の最初の数字を抽出する必要があります
私はこれまでのところ、数字を一般的に一致させるようになりました\d+
-それは単純です...しかし、両方ではなく、最初の値を分離する式が必要です...
次のような文字列のリストがあります: Ø20X400
Ø と X の間の最初の数字を抽出する必要があります
私はこれまでのところ、数字を一般的に一致させるようになりました\d+
-それは単純です...しかし、両方ではなく、最初の値を分離する式が必要です...
ルックアラウンド(?<=..)
とを使用でき(?=..)
ます。
(?<=Ø)\d+(?=X)
またはJavaスタイルで:
(?<=Ø)\\d+(?=X)
2 番目の方法は、キャプチャ グループを使用することです。
Ø(\d+)X
また
Ø(\\d+)X
次に、グループのコンテンツを抽出できます。
通常の正規表現では、次のように言います。
Ø(\d+)X
これØ
により、文字、1 つ以上の数字、X が続きます。また、数字は最初のキャプチャ グループに格納されます。キャプチャ グループは、正規表現の実装ごとに異なりますが、通常は で示され\1
ます。通常、キャプチャ グループ 0\0
は、一致した文字列そのものです。このバージョンで\d
は、 は 0 ~ 9 の数字を示しますが、正規表現エンジンが\n
その目的で使用する場合は、次を使用します。
Ø(\n+)X
この Regex はあなたに代わってそれを行います(\d+?)X
、そしてここにそれを証明する Rubular があります。ほら、数字をグループ化したいのですが、欲張らないようにして、 で評価を終了しX
ます。