-2
string sChar = "_$$$ASDF 123-456-789123123XXX";
string sChar = "$$VIC123-456-789pppEEX";

我想解析 sChar 的上述示例以产生以下值

123-456-789

这个正则表达式会做的是找到字符串中的第一个数字以及接下来的 10 个字符。接下来的 10 个字符可以是特殊字符、字母或数字。

4

1 回答 1

1

这里为您提供解决方案:

var sChar = "_$$$ASDF 123-456-789123123XXX";
//string sChar = "$$VIC123-456-789pppEEX";

var indexDigit = sChar.search(/[\d]/);
var str = sChar.substring(indexDigit, indexDigit+11);
alert(str);

我看到这样的答案:

var str = sChar.match(/\d.{10}/);
alert(str)

那是行不通的:

尝试以下操作:

var sChar = "_$$$ASDF 123-4$6-7";
var sChar2 = "$$VIC987-6$4-3";

var indexDigit = sChar.search(/[\d]/);
var str = sChar.substring(indexDigit, indexDigit+11);
alert(str);//returns "123-4$6-7"

var str2 = sChar2.match(/\d.{10}/);
alert(str2);//returns null
于 2013-07-08T22:51:21.850 回答