相关疑难解决方法(0)

仅返回字符串中的数字0-9

我需要一个可以在VBScript和.NET中使用的正则表达式,它只返回字符串中的数字.

例如,以下任何"字符串"应仅返回1231231234

  • 123 123 1234
  • (123)123-1234
  • 123-123-1234
  • (123)123-1234
  • 123.123.1234
  • 123 123 1234
  • 1 2 3 1 2 3 1 2 3 4

这将在电子邮件解析器中用于查找客户可能在电子邮件中提供的电话号码并进行数据库搜索.

我可能错过了类似的正则表达式,但我确实在regexlib.com上搜索.

[编辑] - 在设置musicfreak的答案后添加了由RegexBuddy生成的代码

VBScript代码

Dim myRegExp, ResultString
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.Pattern = "[^\d]"
ResultString = myRegExp.Replace(SubjectString, "")
Run Code Online (Sandbox Code Playgroud)

VB.NET

Dim ResultString As String
Try
      Dim RegexObj As New Regex("[^\d]")
      ResultString = RegexObj.Replace(SubjectString, "")
Catch ex As ArgumentException
      'Syntax error in the regular expression
End Try
Run Code Online (Sandbox Code Playgroud)

C#

string …
Run Code Online (Sandbox Code Playgroud)

c# regex vb.net vbscript code-generation

66
推荐指数
4
解决办法
6万
查看次数

字母数字仅限数字

寻找快速/有效的方法将字母数字转换为仅数字字符串

例如+ 123-456/7890变为1234567890等.

现有的代码是

foreach(char c in str.ToCharArray() )
  if ( char.IsDigit(c) ) stringBuilder.Append(c);

return stringBuilder.ToString();
Run Code Online (Sandbox Code Playgroud)

.net c#

9
推荐指数
1
解决办法
3422
查看次数

获取文本中的所有数字并获得总和

我有这个文本框

   HAIJME 130, PAYIJE 150, IDHEUO 200
Run Code Online (Sandbox Code Playgroud)

并且应该有130 + 150 + 200 = 480的结果

我搜索了在文本框中获取单词/数字的代码,但它需要有一个开头或结尾,并且会得到剩余的字符.就我而言,我不能假设这些数字每次都会有3个字符.

c#

-4
推荐指数
1
解决办法
72
查看次数

标签 统计

c# ×3

.net ×1

code-generation ×1

regex ×1

vb.net ×1

vbscript ×1