我有一些变数
var jdbcurl="jdbc:oracle:thin:%2F%2Finnova:1521%3BServiceName%3Dorcl%3BMaxPooledStatements%3D20%3BCatalogOptions%3D0%3BBatchPerformanceWorkaround%3Dtrue"
alert(jdbcurl.match(/:[\d]+/)); //gives me :1521
Run Code Online (Sandbox Code Playgroud)
我怎样才能得到jdbc:oracle:thin,innova,1521和orcl出来的jdbcurl变种?
更新
你可以在这里试验(如果需要的话)
Zac*_*urt 10
var jdbcurl="jdbc:oracle:thin:%2F%2Finnova:1521%3BServiceName%3Dorcl%3BMaxPooledStatements%3D20%3BCatalogOptions%3D0%3BBatchPerformanceWorkaround%3Dtrue"
var myregex = /([a-z:]+):%2F%2F([a-z]+):(\d+)%3BServiceName%3D([a-z]+)%3BMaxPooledStatements%3D20%3BCatalogOptions%3D0%3BBatchPerformanceWorkaround%3Dtrue/
var matches = myregex.exec(jdbcurl);
// jdbc:oracle:thin is in matches[1], innova is in matches[2], 1521 is in matches[3], and orcl is in matches[4]
Run Code Online (Sandbox Code Playgroud)
小智 5
如果你必须解析几个网址,你也可以尝试在regexp维护期间获得更好的网址可读性:
var jdburl = unescape("jdbc:oracle:thin:%2F%2Finnova:1521%3BServiceName%3Dorcl%3BMaxPooledStatements%3D20%3BCatalogOptions%3D0%3BBatchPerformanceWorkaround%3Dtrue");
var myRegExp = new Regexp('([a-z:]+)://(\\w+):(\\d+);ServiceName=(\\w+);');
var matches = myRegExp.exec(jdburl);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14726 次 |
| 最近记录: |