我有一个这样的字符串:
"(33) 3669-0210 Gerencia"
我试图获取之后/之前的所有数字 - (连字符),直到在C#中使用正则表达式找到两个空格。
输出应为
"3669-0210"
有人可以帮助使用可在C#中使用的Regex表达式吗?
答案 0 :(得分:6)
您可以使用以下表达式:
\b\d+-\d+\b
它是一个非捕获字边界指示符,后跟一个或多个数字,后跟一个连字符,一个或多个数字,最后是另一个非捕获字边界。
如果匹配的数字总是4位数,则更准确:
\b\d{4}-\d{4}\b
答案 1 :(得分:3)
"[0-9]+-[0-9]+"
这应该足够了
说明:
[0-9]+
- 至少一个号码
-
- 连字符
[0-9]+
- 至少一个号码
答案 2 :(得分:1)
您可以使用以下表达式:
\S+-\S+
它是一个或多个非空白字符,后跟一个连字符,后跟一个或多个非空白字符。