输入:我们将一些纯文本作为输入字符串,我们必须使用<a href={url}>{url></a>
高亮显示所有网址。
有一段时间我使用了来自http://flanders.co.nz/2009/11/08/a-good-url-regular-expression-repost/的正则表达式,我修改了几次,但它是针对另一个问题构建的 - 检查整个输入字符串是否为URL。
那么,你在这些问题上使用什么正则表达式?
UPD :如果答案与php相关会很好: - [
答案 0 :(得分:1)
看一下CPAN上的几个模块:
后者更宽容一点。正则表达式在源代码中可用(例如the latter's)。
例如:
#! /usr/bin/perl
use warnings;
use strict;
use URI::Find::Schemeless;
my $text = "http://stackoverflow.com/users/251311/zerkms is swell!\n";
URI::Find::Schemeless
->new(sub { qq[<a href="$_[0]">$_[0]</a>] })
->find(\$text);
print $text;
输出:
<a href="http://stackoverflow.com/users/251311/zerkms">http://stackoverflow.com/users/251311/zerkms</a> is swell!
答案 1 :(得分:0)
对于Perl,我通常使用一个定义公共正则表达式Regexp::Common::URI::*
的模块。您可以在这些模块的源代码中找到适合您的正则表达式。
http://search.cpan.org/search?query=Regexp%3A%3ACommon%3A%3AURI&mode=module