【问题标题】:regex to check if the input varabile is url or data:image/png;base64, [duplicate]正则表达式检查输入变量是 url 还是 data:image/png;base64, [重复]
【发布时间】:2016-09-09 11:42:17
【问题描述】:

我有这种情况

$var = 'http://example.com/images/image_1.jpg';
$var_2 = 'data:image/png;base64,BASE64_DATA_HERE';
$var_3 = 'data:image/gif;base64,BASE64_DATA_HERE';

我怎样才能使if 条件来检查它是base64 还是url,我想先检查它是否是base64,因为如果我只是检查它是否是url,否则它将是base64,这将是非常糟糕的,并采取照顾这个"http://example.com/images/image_1.jpg?var=base64" 我想用正则表达式检查第一个 var 而不是全部

BASE64_DATA_HERE 只是 base64 代码的大 str 示例

我想要一个 preg_match 正则表达式代码来仅提取 BASE64_DATA_HERE

类似

$var = 'data:image/png;base64,ZXhhbXBsZQ==';
preg_match(regex_here,$var,$matches);
$code = $matches[1];

【问题讨论】:

    标签: php regex


    【解决方案1】:

    我认为您在这里遗漏了一些用于服务器端验证的好东西。看看就好。

    Valitron

    无论如何检查base64字符串,正则表达式是这样的。

    ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
    

    希望对你有帮助!

    【讨论】:

      猜你喜欢
      • 2015-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      • 1970-01-01
      • 2019-12-24
      • 2015-03-12
      • 2011-12-19
      相关资源
      最近更新 更多