我需要取这个字符串:
book_id = ? and author_id = ? and publisher_id = ?
Run Code Online (Sandbox Code Playgroud)
并把它变成这个字符串:
book_id = @p1 and author_id = @p2 and publisher_id = @p3
Run Code Online (Sandbox Code Playgroud)
使用此代码:
Regex.Replace(input, @"(\?)", "@p **(index of group)**");
Run Code Online (Sandbox Code Playgroud)
给我组索引的替换模式是什么?
你可以使用的Regex.Replace方法,需要一个MatchEvaluator,用一个计数器变量一起:
string input = "book_id = ? and author_id = ? and publisher_id = ?";
string pattern = @"\?";
int count = 1;
string result = Regex.Replace(input, pattern, m => "@p" + count++);
Run Code Online (Sandbox Code Playgroud)
该m =>部分是MatchEvaluator。在这种情况下,无需使用Match(即m); 我们只想返回连接的结果并增加计数器。
| 归档时间: |
|
| 查看次数: |
5453 次 |
| 最近记录: |