获取已知字符串之后直到第一个可选逗号的子字符串

Get substring after a known string up to the first optional comma

请帮我建立正则表达式(php)

$a = "Вид=Готовый, Литраж=4, Цвет=красный, ";
preg_match('/^.*Вид=(.+),?.*$/', $a, $match);

我看了手册,它不起作用。

我需要从字符串中获取“Γотовый”,逗号可能不是 谢谢。

您可以使用

$a = "Вид=Готовый, Литраж=4, Цвет=красный, ";
if (preg_match('/Вид=\K[^,]+/u', $a, $match)) {
  echo $match[0]; // => Готовый
}

online PHP demo

图案详情

  • Вид= - 文字字符串
  • \K - 一个匹配重置运算符,用于丢弃匹配缓冲区中到目前为止匹配的文本
  • [^,]+ - 1 个或多个逗号以外的字符