我想匹配此
{format i=34 ds=11 k=a /}
$patern = "/\{format[a-z0-9=\s]?\/\}/i";
但结果为空
另外一个问题:
string string {format mat=34/} string string string string string string string string
string string {format mat=34/} string string string string string string string string
$ pattern =“/ {format [a-z0-9 = \ s] * \ /} / i”;
str_replace($ pattern,'test',$ strings);
它将替换字符串中的所有格式,我想只替换第一个“格式”,并删除所有其他“格式”。怎么样 ?
获取匹配结果为“{format mat = 34 /}”。我想找到以“mat =”开头的字符串。
所以我有这个
$string = "{format mat=34/}";
$pattern = "/^mat=[0-9]*/"; // result is null
$pattern = "/mat=[0-9]*/"; // ok, but also effect with "{format wrongformat=34/}"
如何匹配以“mat =”开头的字符串
答案 0 :(得分:3)
若要多次匹配,请使用*
。 ?
只匹配一个计数:
"/\{format[a-z0-9=\s]*\/\}/i"