2015-06-17 50 views
0

我是JavaScript的新手,现在我试图解析两个单词之间的所有信息。例如,我有:用JavaScript解析信息之间的信息

ip nat translation max-sessions 20000 
interface GigabitEthernet 0/0 
ip nat static-napt tcp 192.168.1.254 444 self 444 
ip nat static-napt tcp 192.168.1.254 448 self 448 
ip nat static-napt udp 192.168.1.254 43161 self 43161 
exit 

其实我想收到的所有信息(包括该行的结束)“接口”和“退出”之间。

+1

是的,我们可以帮助你。我们可以看到你的代码并告诉你它有什么问题。我们不能做的是以你的名义编写代码或猜测你的代码实际上是什么:) –

回答

0

你可以试试这个

var String=str.substring(str.lastIndexOf("interface"),str.lastIndexOf("exit")-1); 
+0

谢谢你的作品,但是在我的情况下,它似乎并不是更好:1.它不显示“退出”2。如果我在我的文本中有几个“界面...退出”块,它只显示最后一个块你有什么解决方案?
mhpassman

1

使用正则表达式:

var text = "ip nat translation max-sessions 20000\n\ 
interface GigabitEthernet 0/0\n\ 
ip nat static-napt tcp 192.168.1.254 444 self 444\n\ 
ip nat static-napt tcp 192.168.1.254 448 self 448\n\ 
ip nat static-napt udp 192.168.1.254 43161 self 43161\n\ 
exit" 

text.match(/interface[\s\S]*exit/) 

的[\ S \ S]在这里所做的伎俩,它匹配的空间和非空间,因此所有字符。

0
var string = 'ip nat translation max-sessions 20000'+ 
'interface GigabitEthernet 0/0'+ 
'ip nat static-napt tcp 192.168.1.254 444 self 444'+ 
'ip nat static-napt tcp 192.168.1.254 448 self 448'+ 
'ip nat static-napt udp 192.168.1.254 43161 self 43161'+ 
'exit'; 

var info =string.substring(string.lastIndexOf("interface"),string.lastIndexOf("exit")); 
console.log(info); 
+0

谢谢你的作品,但在我的情况下,似乎并不是更好
1.它不显示“退出”
2.如果我在我的文本中有几块“接口...退出”它只显示最后一个
你有什么解决方案?
mhpassman