我使用C#并希望在我的代码中使用以下正则表达式:
sDatabaseServer\s*=\s*"([^"]*)"
Run Code Online (Sandbox Code Playgroud)
我把它放在我的代码中:
Regex databaseServer = new Regex(@"sDatabaseServer\s*=\s*"([^"]*)"", RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
Run Code Online (Sandbox Code Playgroud)
我知道你必须在字符串引号内转义所有括号和引号但由于某种原因,以下操作仍然无效:
工作版本:
Regex databaseServer = new Regex(@"sDatabaseServer\s*=\s*""([^""]*)""", RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
Run Code Online (Sandbox Code Playgroud)
有任何想法如何让C#看到我的正则表达式只是一个字符串?我知道我知道....简单的问题...对不起我仍然有点像C#的业余爱好者...
解决:谢谢你们!
当你逃脱括号时,你走得太远了.如果您希望它们是正则表达式元字符(即捕获组),那么您不能逃避它们.否则他们将匹配字面括号.
所以这可能就是你要找的东西:
@"sDatabaseServer\s*=\s*""([^""]*)"""
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
950 次 |
| 最近记录: |