特定の2文字に挟まれた数字を抽出したい。
例: 文字列: x23y4z90
x と y を指定すると 23 が得られ
ます y と z を
指定すると 4 が得られます z と x を指定すると 90 が得られます (文字列パターンがループします)
x\dy
yieldsx23y
ですが、文字を含めたくありません。
*注: これは、LabVIEW でセンサー値をシリアルに読み取るためのものです。
ルックアラウンドまたはグループを使用する必要があります
(?<=x)\d+(?=y)
----- ----
| |->only checks if y is after a digit(lookahead)
|->only checks if x is before a digit(lookbehind)
1 つの可能性は、グループを使用することです。
x(\d+)y
これで、2 番目のグループには数値のみが含まれます。最初のグループは試合全体になります。
もう 1 つの可能性は、肯定的な先読みと肯定的な後読みを使用することです。
(?<=x)\d+(?=y)
+
私が追加したことに注意してください。これは、複数桁の数字を一致させるために必要です。