这应该很容易,但我不知道如何最好地了解它.我有一个WinForms应用程序,让用户键入长的描述.偶尔会输入网址,RichTextBox会识别它们,并在显示时使其可点击.

我将应用程序移动到网络上,我不知道如何使相同的URL可点击.有没有一些半自动的方式将“http://www.google.com”或“www.google.com”转换为可点击的链接?我必须诉诸于RegEx匹配吗?

解决方法

这实际上是一个非常困难的问题.你可以用正则表达式接近但不完美.这里有一个很好的细分潜在的正则表达式模式:
http://www.regexguru.com/2008/11/detecting-urls-in-a-block-of-text/

他列出的最后一个似乎似乎对大多数目的来说足够好:

\b(?:(?:https?|ftp|file)://|www\.|ftp\.)
  (?:\([-A-Z0-9+&@#/%=~_|$?!:,.]*\)|[-A-Z0-9+&@#/%=~_|$?!:,.])*
  (?:\([-A-Z0-9+&@#/%=~_|$?!:,.]*\)|[A-Z0-9+&@#/%=~_|$])

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。