【发布时间】:2011-02-25 16:05:05
【问题描述】:
我正在尝试用正则表达式替换字符串中的 url。问题是字符串可以包含“\n”。例如,
而 \n 是换行符。该字符串是从文本区域收集的。谁能帮我找到一个与 url 匹配的正则表达式,并且知道 \n 不是 url 的一部分。
编辑,
我尝试过的正则表达式之一,
@"(?<!<\s*(?:a|img)\b[^<]*)(\b(?:(?:http|https|ftp|file)://|www\.)[^ |\\]+\b)"
r.Replace(text, "<a href=\"$1\" target=\"_blank\">$1</a>")
r = 我的 Regex 对象和文本是我想用超链接替换 URL 的输入。
【问题讨论】:
-
到目前为止你的正则表达式是什么?你有没有为没有 \n 的字符串解决它,如果是这样,你添加 \n 的问题是什么?
-
您是否有一个要收集的网址或该文本区域中有多个网址?
-
查看我上面的编辑。问题是如果我的文本包含google.com\n 超链接会变成这样,“google.com\n">google.com \n
-
xanatos,字符串可以包含多个 url..
-
把 [^ |\] 换成 [^ |\\\n]