草庐IT

ignore_match

全部标签

php - PHP 中的正则表达式 (preg_match) 模式

我创建了一个在Dreamweaver的正则表达式查找中工作的正则表达式模式,但是当放入preg_match的模式时,它失败了。我在PHP(5.1.6)正则表达式规则中违反了什么,否则这些规则在Dreamweaver的解释中有效?这是PHP:preg_match("/(\{a\})([a-zA-Z0-9{}.])+(\{/a\})/i","{a}{900678}{abcde}{0}{0}{0}{/a}");当前返回false。我如何修改模式,使其匹配任何以{a}anythinggoesinthemiddle{/a}类型字符串开头的字符串?我意识到上面的正则表达式不会匹配中间的“任何东西”

php - 使用 preg_match() 显示字符串的前 n 段

下面的代码显示了字符串的第一段,但我希望它显示前三段:preg_match("/(.*)/",$paragraphs,$matches);echo$matches[0];我是正则表达式的新手,所以我一直在努力解决这个问题。有什么想法吗?感谢您的帮助。 最佳答案 你可以使用preg_match_all:preg_match_all("/(.*)/",$paragraphs,$matches);echo$matches[0][0];echo$matches[0][1];echo$matches[0][2];当您使用preg_match_

php - 来自一些 html 代码的 preg_match

我如何在php中编写phppreg_match()来挑选出250值。我有一大串html代码,我想从中挑选出250个,但我似乎无法正确使用正则表达式。这是我要匹配的html模式-请注意,我要提取250所在的整数:H$250我已经尝试了几个小时来做​​这件事,但我无法让它工作,哈哈 最佳答案 preg_match('/H$(\d+)/i',$your_html,$matches);print"Its".$matches[1]."USD";正则表达式实际上取决于您的代码。您究竟在何处搜索? 关

php - preg_match 获取包含 123 和 .txt 之间任何字符的文件?

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。我需要使用preg_match来获取符合特定条件的文件。例如,我想找到一个名为“123-stack-overflow.txt”的文件。123-之后和.txt之前可以有任何字符。如何修改它才能正常工作?preg_match("/^$ID-(.+).txt/",$name,$file);

php - 在一条语句中插入 IGNORE INTO 和 UPDATE

我正在运行一个为我的用户提供下载服务的脚本。我想在每个字节级别上监控他们的流量,并且我在$bytes中保存了他们下载的字节数。我想将它记录到我的数据库中,我正在使用以下函数:register_shutdown_function(function(){global$bytes;/*Savethetraffictothedatabase*/$db=newPDO('mysql:host=localhost;dbname=test','root','');$st=$db->prepare('INSERTIGNOREINTO`stats`SET`date`=CURDATE(),`bytes`=:

php - preg_match 获取文本

我有test.php和test1.php我有这个PHP代码正在运行我想做的是从test.php中获取文本从这个fid='gty5etrf'JavaScript我只需要fid的内容fid='gty5etrf';v_width=620;v_height=490;在test1.php中我只需要显示内容gty5etrf我必须做什么? 最佳答案 preg_match_all('/fid=\'([^\']+)\'/',$Text,$Match);你的正则表达式是错误的。首先,您正在寻找fid="..."而不是fid='...'。其次,使用.*,

php - 了解 preg_match 公式

我无论如何都让我的东西与以下行一起工作,但我真的无法理解。if(preg_match_all('/[^=]*=([^;@]*)/',shell_exec("/home/technoworld/Desktop/test/b'$test'"),$matches)){$x=(int)$matches[1][0];//optionallycasttoint$y=(int)$matches[1][1];$pcount=round((100*$x)/($x+$y),2);$ncount=round((100*$y)/($x+$y),2);}b是可执行文件,它给出的结果类似于x=10和y=20谁能给

php - preg_match 如何处理使用\Q..\E 时的定界符?

我在玩正则表达式,我尝试了\Q..\E转义序列。第一次尝试:$regex='/\Qhttp://\E/';var_dump(preg_match($regex,'http://'));它告诉我'\'是未知修饰符,完全可以理解。第二次尝试:$regex='/\Qhttp:\/\/\E/';var_dump(preg_match($regex,'http://'));var_dump(preg_match($regex,'http:\/\/'));它运行,不匹配第一个字符串,但匹配第二个。我知道我可以使用其他分隔符或不使用\Q..\E来解决它,但我很好奇它是如何工作的。我首先通过它通过分隔

php - preg_match 转储空数组

鉴于我有urlhttps://website.com/test/demo/success.php?token=-abc123-我想获取值abc123。不知何故,我在preg_match上得到了两个空字符串。$url='https://website.com/test/demo/success.php?token=-abc123-';preg_match('-(.*?)-',$url,$match);var_dump($match);输出:array(2){[0]=>string(0)""[1]=>string(0)""}我在这里做错了什么? 最佳答案

php - preg_match_all - 在字符串中查找完整 url 的正则表达式

我花了4个多小时试图找到我的php代码的正则表达式模式,但运气不佳。我有一个带有html代码的字符串。它有很多url格式,例如:example.comhttp://example.comhttp://www.example.comhttp://example.com/some.phphttp://example.com/some.php?var1=1http://example.com/some.php?var1=1&var2=2etc.我有以下部分工作的php代码:preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[