获取单引号或双引号之间的字符串

迈克·Q

我在以下代码中得到单引号或双引号之间的字符串数据。是否可以将其组合为单个命令或简化?

例子:

 STR_NAME = '12345'
 STR_NAME = "12345"

码:

$match = "STR_NAME = '12345'";
if (preg_match('/"([^"]+)"/', $match, $m)) {
    $val = $m[1]; //found string in double quotes
  } else {
    if (preg_match("/'([^']+)'/", $match, $m)) {
      $val = $m[1]; //found string in single quotes
    }
  }

输出:

 echo $val;
 12345
阿布拉·卡达弗

\1对找到的第一个引用使用反向引用

preg_match('/(["\'])([^\1]+)\1/', $match, $m);
echo $m[2];
  • (["\'])匹配并捕获组1"'
  • ([^\1]+)匹配并捕获第2组中的一个或多个,而不是^第1组中捕获的
    • 您可以在此处使用许多与以下引号不匹配的内容,例如 (.+?)
  • \1匹配在第1组中捕获的内容,"'

无法匹配STR_NAME = "1234'

如果数据一致且可预测,那么您也许可以摆脱:

["\']([^"\']+)["\']

要么:

["\'](.+?)["\']

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

单引号字符串与双引号字符串

替换字符串中的单引号和双引号

MATLAB中的字符串索引:单引号与双引号

保存包含单引号和双引号的字符串?

双引号和单引号内的Grep字符串

用单引号替换双引号字符串

替换字符串中的单引号和双引号

字符串中的单引号和双引号的grep

如何从字符串中删除单引号或双引号?

在python中使用urllib时,双引号和单引号字符串之间的行为不同

使用 grep 获取包含单引号或双引号的字符串的出现次数

fscanf 获取双引号和数字之间的字符串

获取多个双引号之间的字符串值

在包含单引号和双引号的字符串中转义单引号

提取双引号之间的字符串

获取单引号内的字符串

从字符串获取子字符串(单引号之间的字符)(Python)

Python字符串文字-字符串中包括单引号和双引号

PHP将双引号字符串转换为单引号字符串

如何在Java中获取字符串中双引号之间的字符串

如何转义字符串中的所有特殊字符(以及单引号和双引号)?

获取引号字符之间的字符串

如何在单引号或双引号中连接每个换行符字符串

仅使用bash /标准Linux命令去除字符串中的单引号和双引号

在单引号字符串中的onClick参数周围转义双引号

用单引号或双引号提取Python中的字符串

使用双引号和单引号将字符串从EF保存到SQL

PHP:如何分配大字符串的单引号和双引号

回声字符串,包含输入值的单引号和双引号