我正在尝试创建一个模式。我有图像,我想选择这些包含字符串“thumb”的图像,我有以下伪结构:
something-$s[One of these digits: 1 or 2]thumb.jpg
我尝试了以下正则表达式模式:
$pattern_thumb = "/^.*-$s?[1-2]?\-thumb.jpg$/";
正确选择这些图像($s = 18054
):
imagename-180541-thumb.jpg
imagename-180542-thumb.jpg
但问题是,它还选择$s
之后没有1或2的图像:
imagename-18054-thumb.jpg
如何将这些数字[1-2]添加为必填项而非可选项?
答案 0 :(得分:1)
您可以使用此模式:/^.*-$s[12]\-thumb.jpg$/
[1-2]
[12]
[12]
作为必填字符串,因此您不应使用?
。检查my regex 101 example和Repetition (PCRE regex syntax; PHP Manual)。