2012-06-09 40 views
-2

我在App Engine上編寫一個基於Python的開源博客平臺插件(類似於WordPress的)(與Web應用程序框架和Django的模板)重寫PHP正則表達式在Python

這個插件是完全一樣的,因爲這一個:http://wordpress.org/extend/plugins/blog-mechanics-keyword-link-plugin-v01/

一個插件,允許您定義關鍵字/鏈接對。關鍵字 會在您的每個帖子中自動鏈接。

這是鑰匙正則表達式的源代碼:

// The regular expression comes from an older 
// auto link plugin by Sean Hickey. It fixed the autolinking inside a link 
// problem. Thanks to [Steph] for the code. 

// For keywords with quotes (') to work, we need to disable word boundary matching 
if ($ignorecase) $case = "i"; else $case=""; 
$cleankeyword = preg_quote($cleankeyword,'\''); 
if (BM_KEYWORDLINK_QUOTES && strpos($cleankeyword , '\'')>0) 
    $regEx = '\'(?!((<.*?)|(<a.*?)))(' . $cleankeyword . ')(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case; 
else 
    $regEx = '\'(?!((<.*?)|(<a.*?)))(\b'. $cleankeyword . '\b)(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case; 

$content = preg_replace($regEx,$url,$content,$limit); 

我如何可以重寫在Python的正則表達式?我沒有PHP的經驗。

非常感謝!

+3

重寫正則表達式的一部分是你有麻煩嗎?你有什麼嘗試? –

+0

@SusanMayer:你基本上是要求我們爲你做,這在StackOverflow上是不受歡迎的。你需要先付出一些努力,否則你不會得到任何(或很少)的幫助。也許你應該首先閱讀[PHP中的PCRE(Perl兼容正則表達式)](http://www.php.net/manual/en/book.pcre.php),或者嘗試通過重寫來實現相同的功能PHP代碼逐字母。與Python相比,PHP有許多缺點,所以基於特性定義而不是實際的實現可能是一個更好的主意。 – Tadeck

回答

1

你有什麼試過?通過re手冊。它有很多很好的信息,它會回答你可能遇到的許多問題。例如,用於使外部字符串安全的re.escape