2012-04-19 84 views
0

我想从字符串中提取信息。用JavaScript解析代码/ jquery

%B6009050000000000^LASTNAME/FIRST MIDDLE^0000000A39418598900000000000000?;6009050000000000=00000000139418598900? 

我需要的信息是A39418598

我已将此分配给var str,现在我需要将其拆分并将其传递给Ajax,如var id

我使用var id = str.split('');如果是这样,我该如何正确地告诉JavaScript我需要什么?其余的数据可以被驳回。

+1

什么是生成此字符串?如果没有定义的格式,则不可能通过编程方式提取某个字符串。 – jbabey 2012-04-19 13:19:17

+1

你需要一个正则表达式。 – SLaks 2012-04-19 13:19:19

+0

它由读卡器定义。卡被刷了,这就是它呈现的字符串。 A到8号码将会改变,但其他一切都会改变。 – 2012-04-19 13:41:07

回答

1
var s = "%B6009050000000000^LASTNAME/FIRST MIDDLE ^0000000A394185989000..."; 

s.match(/\^0+?([^0]+)/)[1]; //"A394185989" 

这样做的工作,但要注意,这个正则表达式真的是特定于该字符串。

+0

+1要先回答:)) – 2012-04-19 13:26:06

0
var str="%B6009050000000000^LASTNAME/FIRST MIDDLE"; 
str=str+"^0000000A39418598900000000000000?;6009050000000000=00000000139418598900?" 

str.match(/\^0+?([^0]+)/)[1]; 
+0

不错,我不会提出更好的正则表达式...... :) – fcalderan 2012-04-19 13:25:03

+0

什么意外(当我打开问题页面时没有回复)。 – 2012-04-19 13:27:08