我试图在第一次出现双正斜杠之后匹配所有内容直到冒号。该字符串如下所示:
connectionUrl=jdbc\:postgresql\://somestringhere\:5432/somedb
到目前为止,我已经设法提出以下内容:
/\/([^/])(.*?)(?=\\)/
这抓住了:
/somestringhere
我正在试图弄清楚如何摆脱第二个/
,以便我只抓住:
somestringhere
提前致谢!
答案 0 :(得分:2)
在Powershell中,您可以使用基于正则表达式的后瞻和否定字符类:
int primeNumberList(int n, int m, int z) {
int notPrime = 0;
static done = 0;//add a bypass variable, init to zero
if (n <= 1) {
primeNumberList(n + 1, m, z);
}
else
{
if(n == 10)
{
done = 1; //at this point all primes (except 1) are printed
//so set done to 1
}
if (n < m)
{
if (z <= n / 2)
{
if (n % z == 0)
{
notPrime = 1;
z = 2;
}
else
{
primeNumberList(n, m, z + 1);
}
}
if ((notPrime == 0) && (!done)) //test done before printing
{
printf("%d ", n);
}
primeNumberList(n + 1, m, z);
}
}
return 0;//add this return statement
}
请参阅regex demo
说明:
(?<=//)[^/:\\]+
- 要求(?<=//)
子字符串出现在...之前的正面观察... //
- [^/:\\]+
,/
和\\
以外的一个或多个字符。答案 1 :(得分:0)
你有几个选择,这里有两个:
使用后面的断言:
/(?<=\/\/)[^:]+/
使用匹配组:
\/\/([^:]+)/
===========================================
让我们说,您正在使用 Ruby :
使用后面的断言:
str = 'connectionUrl=jdbc:postgresql://somestringhere:5432/somedb'
regex = /(?<=\/\/)[^:]+/
result = regex.match( str )[0]
使用匹配组:
str = 'connectionUrl=jdbc:postgresql://somestringhere:5432/somedb'
regex = /\/\/([^:]+)/
result = regex.match( str )[1]
===========================================
让我们说,您正在使用 PHP :
使用后面的断言:
<?php
$str = 'connectionUrl=jdbc:postgresql://somestringhere:5432/somedb';
preg_match( '/(?<=\/\/)[^:]+/', $str, $match );
print $match[0] . "\n";
?>
使用匹配组:
<?php
$str = 'connectionUrl=jdbc:postgresql://somestringhere:5432/somedb';
preg_match( '/\/\/([^:]+)/', $str, $match );
print $match[1] . "\n";
?>
答案 2 :(得分:0)
这是我的尝试:
app/assets/...
输出:
$string = "connectionUrl=jdbc\:postgresql\://somestringhere\:5432/somedb"
if ($string -match '^.*\/\/(.+)\\:')
{
$Matches[1]
}
答案 3 :(得分:0)
好的,根据Wiktor,Micky和Andreas(干杯!)的输入,我进行了一些实验,最后在powershell中使用以下正则表达式实现了所需的匹配:
(?<=//)[^/:]+(?=\\)
测试结果:
$var = 'connectionUrl=jdbc:postgresql://somestringhere:5432/somedb'
$var -match '(?<=//)[^/:]+(?=\\)'
$Matches.Values
somestringhere
再次感谢大家在这里的努力!