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

问题描述 投票:1回答:1

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

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

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

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

php regex string preg-match
1个回答
2
投票

你可以用

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

online PHP demo

图案细节

  • Вид= - 文字字符串
  • \K - 匹配重置运算符,用于丢弃与匹配缓冲区匹配的文本
  • [^,]+ - 除逗号之外的1个或多个字符
© www.soinside.com 2019 - 2024. All rights reserved.