从正则表达式获取字符串中的数字

时间:2009-06-25 12:24:54

标签: regex string

我正在尝试编写一个正则表达式来从这些字符串中获取数字:

javascript:ShowPage('6009',null,null,null,null,null,null,null)
javascript:BlockLink('2146',null,null,null)

我在编写正则表达式时难以获取这些数字。

有人可以伸出援手吗?

干杯

EEF

5 个答案:

答案 0 :(得分:26)

试试这个:

(\d+)

您使用什么语言来解析这些字符串?如果您告诉我,我可以帮助您使用此正则表达式所需的代码。

答案 1 :(得分:5)

假设:

  • 您想要捕获数字
  • 每行只有一组数字

试试这个:

/(\d+)/

然后$1(Perl)或$matches[1](PHP)或您选择的毒药,应该包含数字。

答案 2 :(得分:2)

整数或浮点数:

/\d+((.|,)\d+)?/

答案 3 :(得分:0)

只匹配数字:\ d +

答案 4 :(得分:0)

// PHP

$string = 'ssss 12.2';
$pattern = '/\D*(\d+)(.|,)?(\d+)?\D*/';

$replacement = '$1.$3';

$res = (float)preg_replace($pattern, $replacement, $string);

// output 12.2