PHP编程语言的正则表达式模式匹配函数
您的第一次问题……我对preg_match使用了以下模式,该模式无法正常工作,据我了解,这可能是UTF-8编码问题……或者仅仅是我的编码错误!以下模式...
在PHP多维数组中搜索部分字符串,并返回包含该字符串的特定数组
我有一个多维数组。我有一个日期(例如:2021-06-11),需要在该多维数组中的SESSION数组(例如:2021-06-11T18:00:00Z)中的特定键(startTime)中进行搜索。 ...
这可能是一个非常基本的问题,我不太确定该怎么问。我有一个热门网站,人们可以从我的网站访问他们的网站,以获得“淘汰”号码。如果...
我想我将preg_match()的结果与(bool)一起使用,但我不确定。我认为不清楚结果是对还是错。示例1:if(((bool)preg_match($ pattern,$ ...
我已经在PHP中搜索了以下网站验证代码的解释/含义,但没有得到。有什么线索吗? (!preg_match(“ / \ b(?:( ?: https?| ftp):\ / \ / | www \。)[-a-z0-9 +&@#\ /%?=〜_ | !: ,。;] * [-a-z0 -...
我正在使用一个包含参数的字符串,在PHP中使用preg_match用一些特殊字符将其分隔开。一个示例可能像这样,其中有四个参数。 1stparm?#?1111?@?2ndParm?#?...
您好,我目前正在尝试验证表单中的用户输入。我正在使用正则表达式和php preg_match函数。我正在尝试使用电子邮件,电话号码和邮政编码....
我得到的数组是这样的:$ array = array(3A32,4565,7890,0012,A324,9002,3200,345A,0436);然后,我需要查找哪些元素具有两个数字。数字的值...
我有2个数组,我想使用第一个数组中的键从第二个数组中搜索匹配的键,然后从第二个数组中返回那些键。表2中的键不变,这里有一个...
我正在编写脚本来对文件列表进行排序,获取与特定文件名匹配的最新文件,然后将其复制到另一个文件夹。我正在用PHP编写此代码,然后将其设置为在......>
如何使用preg_match从两个HTML Div中获取数据?
我正在尝试在这两个div之间获取数据:- - 我正在使用以下正则表达式,但是它是...
我正在尝试检索上载PDF中使用的所有字体的列表。以下脚本适用于某些PDF,但是在PDF的同一行上列出了字体时,该脚本找不到...
Ru支付卡以下面的16位数字开头60 6021 6522因此,如何匹配此格式以获取类型,因为它是借记卡的rupay类型,所以我尝试使用此正则表达式/ ^((((60)([0-9 ] {14})...
我想匹配这样的短语:面对相同问题的问题相同,我遇到相同问题的问题相同,但是我不想...
我正在尝试使用preg_match()完全匹配我的字符串,而不仅仅是子模式。例如,我的正则表达式是:preg_match('/ ^ nil @ nil /',$ constant)和我试图匹配的字符串=“ nil @ nil”,但是...
通过php中的preg_replace删除顶部和底部的多行html代码,而不是两个字符串'hello'的中间[重复]
$ data =' hello [ hello&...
所以我有PHP代码可以显示如下所示的HTML: 这是一个标头 这也是一个/ h2> 这里是一个 > ] >> 这里不要弄乱正则表达式-结合DOMDocument查询释放xpath的功能: <?php $html = <<<EOT <div class="wrapper"> <h2>This is a header</h2> <h2>This is one too</h2> <h4>Here's one</h4> <div class="ignore"> <h5>I'm one in here too</h5> </div> </div> EOT; $doc = DOMDocument::loadHTML($html); $xpath = new DOMXpath($doc); $headers = $xpath->query(" //div[not(contains(@class, 'ignore'))] /*[self::h2 or self::h4 or self::h5]"); foreach ($headers as $header) { echo $header->nodeValue . "\n"; } ?> 这将产生 This is a header This is one too Here's one 由于您指定要使用preg_match(),因此下面是一个负向后看的示例(即,过滤掉不以XYZ开头的那些出现:https://regex101.com/r/FeAsuj/1 后面的本身是(?<!<div class=\"ignore\">)。 但是在测试片段中,请注意: 正则表达式取决于空白的确切使用... ...因此依赖于平台的\ r \ n可以破坏正则表达式 后视不能具有可变长度,即\ n? -参见Regular Expression Lookbehind doesn't work with quantifiers ('+' or '*') 如果必须继续使用正则表达式,请考虑采用两步方法: 第1步,使用preg_replace()消除了所有不需要的部分。 第2步,使用您现有的正则表达式。 通常,我会同意其他海报以避免正则表达式,并使用HTML解析器。 使用DOMDocument和DOMXPath: $html = <<<'HTML' <div class="wrapper"> <h2>This is a header</h2> <h2>This is one too</h2> <h4>Here's one</h4> <div class="ignore"> <h5>I'm one in here too</h5> </div> </div> HTML; $dom = new DOMDocument; $dom->loadHTML($html); $xp = new DOMXPath($dom); $nodeList = $xp->query(' //* [contains(";h1;h2;h3;h4;h5;h6;", concat(";", local-name(), ";"))] [not(ancestor::div[ contains(concat(" ", normalize-space(@class), " "), " ignore ") ]) ]'); foreach ($nodeList as $node) { echo 'tag name: ', $node->nodeName, PHP_EOL, 'html content: ', $dom->saveHTML($node), PHP_EOL, 'text content: ', $node->textContent, PHP_EOL, PHP_EOL; } demo 如果您对XPath不满意,请查看zvon tutorial。
我有一个表单,其中的字段仅接受访问码的数字。访问代码为6或9个数字。目前,我正在使用elseif((!is_numeric($ values ['access']))|| ...
我坚持尝试做一个正则表达式,该表达式允许小数点前9位,如果使用小数,则允许1到3位。例如:123456789 //有效1234567890 //无效的123456789。//无效的...
看到类似的帖子,如何获得两个不同标签之间的每一行文本?找到文本块后,我想在其中的每一行开头添加一些内容,然后...