gpt4 book ai didi

php - 正则表达式的问题应该只匹配行首或匹配太少

转载 作者:行者123 更新时间:2023-11-28 11:47:51 25 4
gpt4 key购买 nike

我写了这条 RegEx 行:

    $dp = preg_replace('/(.*'.$definition.'.*?\s'.$property.':)([^;]*)(.*)/is','$2',$css);

应该推断 CSS 定义的属性值。换句话说,如果我的 CSS 是:

#mydiv {
width: 100px;
}

$dp 应该返回 '100px',其中 $definition = '#mydiv' 和 $property = 'width';

除了它还匹配“mydiv”或“.mydiv”之外,该代码似乎有效(但如果您发现任何错误请告诉我)。您能否帮我更改代码,以便如果我在 $definition = '#mydiv' 中仅匹配 #mydiv 而不是 'mydiv' 或 '.mydiv'?

我在想,因为所有的 $definitions 都在新行的开头,所以我可以尝试更改它,以便它与一行开头的所有 $definition 匹配,但我不知道该怎么做我不知道这是不是最好的方法。我乐于接受建议。

代码应该适用于所有不同类型的 CSS 定义和属性。

感谢您的帮助!

最佳答案

你可以试试这个正则表达式:

^#mydiv\s*{.*?width\s*:\s*([^;]+);.*?}

描述

Regular expression visualization

关于php - 正则表达式的问题应该只匹配行首或匹配太少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20419136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com