【问题标题】:How do you modify the matched string using Regex.Replace?如何使用 Regex.Replace 修改匹配的字符串?
【发布时间】:2013-08-12 06:25:41
【问题描述】:

假设我要转换这些字符串:

www.myexample.com 和http://www.myexample.com
进入:

<a href='http://www.myexample.com'>http://www.myexample.com</a>

使用 Regex.Replace

我想出了这个:

Regex.Replace(string, pattern, "<a href=\"$&\">$&</a>")

我的问题是我不知道如何检查匹配的字符串 $& 是否以 http:// 开头并在必要时添加它。

有什么想法吗?

【问题讨论】:

  • 你一直使用的模式是什么?

标签: c# regex


【解决方案1】:

如果您不必考虑https 或类似的东西,您可以使用这个:

Regex.Replace(string, @"(?:http://)?(.+)", "<a href=\"http://$1\">http://$1</a>")

【讨论】:

  • 如果你想考虑https的可能性,那么将http:改为https?:
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-18
  • 2013-02-05
  • 2012-05-28
  • 2010-12-12
  • 2017-05-08
  • 1970-01-01
相关资源
最近更新 更多