簡體   English   中英

用於URL匹配的正則表達式(PCRE)

[英]Regular expression (PCRE) for URL matching

輸入:我們將一些純文本作為輸入字符串,並且必須使用<a href={url}>{url></a>那里的所有URL。

一段時間以來,我一直使用來自http://flanders.co.nz/2009/11/08/a-good-url-regular-expression-repost/的正則表達式,我對其進行了多次修改,但它是為另一個而構建的問題-檢查整個輸入字符串是否為URL。

那么,您在此類問題中使用什么正則表達式?

UPD :如果答案與php有關,那就太好了:-[

看一下CPAN上可用的幾個模塊:

后者更寬容。 正則表達式在源代碼中可用(例如,后者 )。

例如:

#! /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!

對於Perl,我通常使用定義通用正則表達式的模塊之一Regexp::Common::URI::* 您可能會在這些模塊的源代碼中找到適合您的正則表達式。

http://search.cpan.org/search?query=Regexp%3A%3ACommon%3A%3AURI&mode=module

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM