爲了好玩,我決定做類似於降價的事情。憑藉我過去對正則表達式的小體驗,我知道他們有多麼強大,所以他們將成爲我需要的。PHP preg_replace將** xyz **改爲<b>xyz</b>
所以,如果我有這樣的字符串:
Hello **bold** world
如何,我可以使用的preg_replace來轉換到:
3210我認爲這樣的事情?
$input = "Hello **bold** world";
$output = preg_replace("/(\*\*).*?(\*\*/)", "<b></b>", $input);
在正則表達式中,您可能會完全按照您的要求進行操作,但請記住,標記等內容不應該使用正則表達式實現。 Joel Spolsky在Stack Overflow播客中談到了這個問題。看看有限狀態機。 – emurano 2010-10-25 21:56:19
指向播客的鏈接:http://itc.conversationsnetwork.org/shows/detail4359.html – 2010-10-25 22:02:46
@emurano FSM可以處理的語言是常規的;因此它們可以由正則表達式來處理。 – NullUserException 2010-10-25 22:27:25