2013-11-14 61 views
2

我有兩個字符串變量。 例如我如何檢查一個字符串是否是另一個字符串的子字符串,其他字符是下劃線+數字?

$title = 'string'; 
$title2 = 'string_01'; 

$title2可以是相同$title或者可以是$title.'_'.number

目前我做的:

$sametitle = strpos($title2, $title); 
if(!($sametitle === 0)) { 

如果$title != $title2我需要檢查,如果$title$title2子串,如果$title是在$title2開始和$title2字符串的其餘部分匹配下劃線+數字,以便在這種情況下:

$title = 'st'; 

它不會進入if。

我想我可以用preg_match做到這一點,但我不太瞭解正則表達式,所以我不知道該怎麼做。

預先感謝您! :)

回答

0

您可以使用此的preg_match:

preg_match('/^' . preg_quote($title, '/') . '(_\d+)?$/', $title2); 
1

你可以這樣做:

if (preg_match('~\Q' . $title . '\E_[0-9]+~', $title2, $match)) { 
    print_r($match); 
} 

其中\Q.....\E允許內$title特殊字符。

相關問題