Regex 需要正则表达式的帮助吗
一串Regex 需要正则表达式的帮助吗,regex,match,Regex,Match,一串 mssql://text1:text2@text3/text4?ApplicationName=adfDGFSHG 我需要匹配 text1:text2@text3 及 我写道: string ConnectionURL = "mssql://faerg:aassd@4235453tgr/he657i7u8kui?ApplicationName=adfDGFSHG"; Match m = Regex.Match(ConnectionURL, "mssql\\s*:\\s*//\\s*([
mssql://text1:text2@text3/text4?ApplicationName=adfDGFSHG
我需要匹配
text1:text2@text3
及
我写道:
string ConnectionURL = "mssql://faerg:aassd@4235453tgr/he657i7u8kui?ApplicationName=adfDGFSHG";
Match m = Regex.Match(ConnectionURL, "mssql\\s*:\\s*//\\s*([\\d\\w\\s]*)/([\\d\\w\\s]*)\\?");
但这和什么都不匹配。非常感谢您的帮助:)
在Rubular上测试和tru(需要在
/
上转义)。不幸的是,我无法创建永久链接:(请尝试使用以下正则表达式:
^.*?//([a-z0-9@:]+)/([a-z0-9]+).*$
http
部分是如何进入这个正则表达式的?您的字符串以mssql开头,但您的正则表达式以http开头…这个正则表达式还将包括前面的/
text4@AbhishekSimon不,没有捕捉到/
;它位于两组之间(第一个不能是/
,因此匹配到该字符;第二个GROUP将匹配到?
)。此正则表达式选择整个url@Abhishek Simon
您知道如何使用括号()
在regex?+1中可以实现这一点。人们至少应该在投票前努力确保自己是正确的。谢谢,@hsz,你的解决方案可行,但jensgram首先提出了解决方案,所以我接受他的回答。
^mssql://([^/]+)/([^?]+)\?
^.*?//([a-z0-9@:]+)/([a-z0-9]+).*$