正则表达式获取一个句子中的所有字符串,这些字符串有7个字符,以数字开头,以数字结尾

时间:2017-10-04 03:31:14

标签: regex

我想提取一个以数字开头并以数字结尾的句子中的所有字符串,长度为7个字符。在第一个和最后一个数字之间,它可以包含数字或字母。

示例:用于测试的示例文本:0012345 15R7544 35P2699

我想得到这些字符串 - 0012345,15R7544,35P2699

3 个答案:

答案 0 :(得分:0)

let patt = /\b\d[\da-zA-Z]{5}\d\b/g;

let str = "hello 35P2699 world another 0012345 random";

console.log(str.match(patt));

\b是字边界,检查字符串的开始和结束。

\d检查数字。

[\da-zA-Z]{5}检查在开始和结束数字之间发生的5次数字或字母。

答案 1 :(得分:0)

在perl中,您可以将它们全部放在像这样的数组中

 my @strings= $str=~/(\b\d\w{5}\d\b)/g ;

答案 2 :(得分:0)

尝试以下正则表达式。您需要修剪每个输出。

(^|\s)\d{1,1}[\d|\w]{5,5}\d{1,1}($|\s)