私はこのような文字列を持っています:
"(33) 3669-0210 Gerencia"
C#で正規表現を使用して、両端に空白が見つかるまで、-(ハイフン)の前後のすべての数字を取得しようとしています。
出力は
"3669-0210"
C#で動作する正規表現を手伝ってくれる人はいますか?
次の式を使用できます。
\b\d+-\d+\b
これは、非キャプチャワード境界指示子であり、その後に 1 つ以上の数字、その後にハイフン、1 つ以上の数字、最後に別の非キャプチャ ワード境界が続きます。
一致する数字が常に 4 桁の長さである場合、これはより正確です。
\b\d{4}-\d{4}\b
"[0-9]+-[0-9]+"
これで十分なはずです
説明:
[0-9]+
- 少なくとも 1 つの数字
-
- ハイフン
[0-9]+
- 少なくとも 1 つの数字
次の式を使用できます。
\S+-\S+
これは、1 つまたは複数の非空白文字の後にハイフンが続き、その後に 1 つまたは複数の非空白文字が続きます。