如何使用正则表达式从字符串中提取整数

时间:2014-04-02 00:26:33

标签: regex

我有一个像" something1 PP:222 something2"我想从这个字符串中取出222。通常,它可以是以PP开头的任何整数:并且后面的任何内容由空格分隔。提取这种模式的正则表达式是什么?我是正则表达式的新手,我正在努力

2 个答案:

答案 0 :(得分:2)

这应该有效(假设JavaScript语法,但易于移植):

/PP: (\d+)/

示例:

var match = 'something1 PP: 222 something2'.match(/PP: (\d+)/);

if (match) {
    var num = match[1];
}

答案 1 :(得分:1)

你可以使用这样的正则表达式:

/\s(\d+)\s/

\s是一个空格,(\d+)是一个捕获组,捕获至少一个数字,然后是另一个要跟随的空格(根据您的示例)。在此特定示例中,指定捕获组周围的边界(在您的大小写空间中)非常重要,因为您不希望捕获该字符串末尾的数字,或者可能在字符串中弹出的任何其他数字。


在您学习时,在线正则表达式测试工具非常有用,请查看regex101.com