2

我有两个字符串变量。例如

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

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

目前我这样做:

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

如果$title != $title2我需要检查是否$title$title2 AND 的子字符串,如果$title在开头并且字符串$title2的其余部分$title2与下划线+数字匹配,那么在这种情况下:

$title = 'st';

它没有进入如果。

我想我可以用 preg_match 做到这一点,但我不太了解正则表达式,所以我不知道该怎么做。

先感谢您!:)

4

2 回答 2

1

你可以这样做:

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

where\Q.....\E允许在$title.

于 2013-11-14T13:31:19.437 回答
0

你可以使用这个 preg_match:

preg_match('/^' . preg_quote($title, '/') . '(_\d+)?$/', $title2); 
于 2013-11-14T13:29:26.680 回答