【问题标题】:Select element in array with preg_match_all [duplicate]使用 preg_match_all 选择数组中的元素 [重复]
【发布时间】:2013-12-30 13:12:06
【问题描述】:

我有一个数组,它是 preg_match_all 的产物,该数组包含来自 HTML 页面的元素,这些元素是我对 curl 请求的响应。

所以在我的数组中有几个这样的元素:

<script>...</script> 

我需要选择的是一种形式:

<script>write_which('X','Y','Good','N','Bad','P','Pending','R','Referred','I','Incomplete','D', 'Still in 3D-Secure redirect', 'L','Later','U','Unknown')</script>

括号中的第一个元素“X”可以具有以下任何字母的值:Y、N、P、R、I、D、L、U。

所以我的问题是如何精确匹配数组中的元素?因为我尝试了许多不同的正则表达式并且无法弄清楚。

感谢大家的帮助。

【问题讨论】:

    标签: php html regex arrays preg-match-all


    【解决方案1】:

    您是否只需要获取第一个元素并使其始终具有相同的结构?如果是,试试这个

    .*?'(.*?)'

    【讨论】:

      【解决方案2】:

      你能试试这个正则表达式吗:

      "#<script>\s*write_which\s*\(\s*'X'\s*,\s*'[YNPRIDLU]'.+?</script>#is"
      

      【讨论】:

      • 感谢您已经找到工作,但感谢您的帮助。谢谢
      • 不客气,很高兴您找到了解决方案。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-23
      • 1970-01-01
      • 2018-08-10
      • 2013-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多