0

我还是正则表达式的新手(我应该学习),我只需要 JS 正则表达式从这样的文本中提取字符串和数字:[number][string].

( /^(\d+).(\s+)/?)

请问有什么帮助吗?

4

2 回答 2

2

我认为您正在寻找 ' /\d+[a-z]+/gi' :

var x = "123123K, 333D".match(/\d+[a-z]+/gi); 
console.log(x)​;    //["123123K", "333D"]

更新x是数组。您可以对其进行迭代并提取数字和文本:

xitem.match(/\d+/)[0]      //number
xitem.match(/[a-z]+/i)[0]  //text

PS:关于\s

匹配一个空白字符,在 ASCII 中是制表符、换行符、换页符、回车符和空格;在 Unicode 中,还匹配不间断空格、下一行和可变宽度空格(等等)。

http://en.wikipedia.org/wiki/Regular_expression#Examples

于 2012-04-07T11:24:36.687 回答
0

如果方括号也在该行中,则执行以下操作:

/^\[(\d+)\]\[(\s+)\]$/

如果他们不是

/^(\d+)(\s+)$/
于 2012-04-07T10:32:05.683 回答