gpt4 book ai didi

php - 正则表达式:获取 css 类、id 和标签

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

我有获取 css 代码选择器的模式,它们是 .classes#idshtml 标签。我使用 preg_match 将它们排序到一个仅包含选择器名称的数组中。

发生的事情是我只得到第一个选择器两次,一次带左括号,另一次没有。

这是$contect:

主体{ 颜色:黑色; } .class_class { 颜色:#fff;字体:tahoma; } #awesome_id{ }

这是结果:

Array
(
[0] => body{
[1] => body
)

这是代码:

<?php 
#Patterns
$selectors = "/(\.?\#?-?[_a-zA-Z]+[_a-zA-Z0-9-]*\s*)\{/";
#Sort
preg_match($selectors, $content, $_selectors);
?>
<pre>
<?php
print_r($_selectors);
?>
</pre>

我想要的-根据内容-是这样的结果

Array
(
[0] => body
[1] => .class_class
[2] => #awesome_id
)

最佳答案

你可以使用这个正则表达式~{(.*?)}~

<?php

$str='body{ color: black; } .class_class { color: #fff; font: tahoma; } #awesome_id{ }';
$str = preg_replace("~{(.*?)}~s","", $str);
$arr = array_filter(explode(' ',$str));
print_r($arr);

输出:

Array
(
[0] => body
[1] => .class_class
[3] => #awesome_id
)

Demo

enter image description here

关于php - 正则表达式:获取 css 类、id 和标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23030276/

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