我有一个包含项目列表的PHP字符串,我想获取最后一个。现实要复杂得多,但归结为:$Line='First|Second|Third';if(preg_match('@^.*|(?P.+)$@',$Line,$Matches)>0){print_r($Matches);}我希望Matches['last']包含“Third”,但它不起作用。相反,我让Matches[0]包含完整的字符串,没有其他内容。我做错了什么?请不要有变通办法,我可以自己做,但我真的很想将它与preg_match一起使用 最佳答案 你有这个:'@^.*|(?P.+
我正在尝试学习正则表达式。我有字符串:$x="5ft2inches";如何使用正则表达式将[5,2]读入数组? 最佳答案 如果您假设字符串的格式为“{number}ft{number}inches”,那么您可以使用preg_match():preg_match('/(\d+)ft(\d+)inches/',$string,$matches);(\d+)将匹配一个或多个数字的字符串。括号将告诉preg_match()将匹配的数字放入$matches变量(函数的第三个参数)。如果匹配,该函数将返回1,否则返回0。这是成功匹配后$matc
我正在使用以下代码从字符串中提取版本号。版本号是第一个仅由数字和点组成的匹配项。例如,在字符串中:“GT-I9000M-user2.25.31FROYOUGKC1release-keys”匹配为:“2.25.31”字符串中的另一个示例:“1.24.661.1hbootpreupdate:13DelCache:1”匹配为:“1.24.661.1”。我当前的代码是:if(preg_match('/[\d]+[\.][\d]+/',$version,$matches)){return$matches[0];//returningthefirstmatch}此代码仅适用于部分情况,并非所有情况
我需要匹配(不区分大小写)“abcd”和一个可选的商标符号正则表达式:/abcd(™)?/gi看例子:preg_match("/abcd(™)?/gi","AbCd™U9+",$matches);print_r($matches);当我运行它时,$matches没有填充任何东西……甚至没有创建为空数组。有什么想法吗? 最佳答案 您的文件是如何编码的?PHP在涉及unicode时遇到了问题。在您的情况下,请尝试使用转义序列\x99而不是直接嵌入TM符号。 关于php-为什么这个正则表达式在
因为我对正则表达式完全没用,而且在过去的半小时里这一直困扰着我,我想我会把它贴在这里,因为它可能非常简单。hey.exehey2.dllpomp.jpg在PHP中,我需要提取之间的内容标签示例:hey.exehey2.dllpomp.jpg 最佳答案 避免使用“.*”,即使您不喜欢它,直到您对RegEx进行更多练习。我认为对您来说一个好的解决方案是:'/]+>([^/i'请注意“/”分隔符-您必须在PHP中使用正则表达式函数的preg套件。它看起来像这样:preg_match_all($pattern,$string,$matche
我用PHP在我的数据库中检索一个css文件。所以我有:$mycss="SOMECSSSOMECSSSOMECSS"在这个$mycss中,我可以有:div.coul01,.red,.coul01{color:#663333;}div.coul02,.blue,.coul02{color:#3366CC;}对于这个例子,我需要在PHP中检索以div开头的每条指令。第二个元素,这里是“红色”和“蓝色”。你有什么想法吗?谢谢! 最佳答案 如果您真的不想使用任何库并想坚持使用正则表达式,这对您有用:然后在您的$matches变量中,您将拥有如
有一个非常流行的程序(我忘了名字)生成三角形,每一边都有一个问题或答案,每个三角形组合在一起,使得一个三角形的答案与另一个三角形的问题相匹配,当正确组合起来会形成更大的形状(通常是正六边形)。我正在尝试编写一个脚本,其中$t是一个包含卡片的二维数组:$t=array();//$t['1']representsthe'center'triangleinthisbasicexample$t['1']=array('1',//OnesideofT1,whichisananswer'3-1',//Anotherside,thisisaquestion'2+1'//Finalside,anoth
我在PHP中使用preg_replace函数,并尝试用bit.ly缩短的链接替换用户提交的url:$comment=preg_replace('/(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/i','',$strText);这将只显示评论并“清除”url。问题是如何从文本中获取URL并稍后附加它? 最佳答案 preg_replace_callback()来自php.net的示例:定义一个回调函数来替换URL。它将接收匹配项作为参数,并在内部根据这些匹配项形成一个替换字符串。
我目前正忙于phpmailer,想知道如何使用脚本自动将本地镜像嵌入到我的电子邮件中。我的想法是上传一个html文件和一个包含图像的文件夹,然后让脚本替换src标签到cid标签。现在我得到的是:$mail=newPHPMailer(true);$mail->IsSendmail();$mail->IsHTML(true);try{$mail->SetFrom($from);$mail->AddAddress($to);$mail->Subject=$subject;$mail->Body=embed_images($message,$mail);$mail->Send();}现在我得到
我有以下数组:$matches[0]="123";$matches[1]="987";$matches[2]="121";以及以下字符串:$result="Myphonenumberis{0}andpolicenumberis{2}";我想根据$matches数组替换{}占位符,以防占位符不匹配时显示任何内容。实现该目标的最佳方法是什么,或者您知道解决我的问题的更好方法吗?(现在我正在构建系统,所以我可以使用任何其他符号代替大括号)更新在python中,这可以使用.format()函数实现。 最佳答案 您可以使用vsprintf来完