草庐IT

preg-match

全部标签

php - 获取非数字字符,然后在文本 block 的每一行上编号

我有一些字符串可以采用以下格式:sometextmoretext01texttextsometextmoretext002texttext1(somemoretext)etcIwanttosplitthesestringsintofollowing:textbeforethenumberandthenumberForexample:texttext1(somemoretext)拆分时输出:text=文本文本数字=1数字后面的任何内容都可以丢弃。 最佳答案 preg_match('/[^\d]+/',$string,$textMatc

php - 将 preg_match() 与 REGEX 表达式一起使用时的未知修饰符 '('

这个问题在这里已经有了答案:Warning:preg_replace():Unknownmodifier(3个答案)关闭3年前。我正在尝试使用preg_match()通过PHP验证诸如DD/MM/YYYY之类的日期。这是我的REGEX表达式的样子:$pattern="/^([123]0|[012][1-9]|31)/(0[1-9]|1[012])/(19[0-9]{2}|2[0-9]{3})$/";但是用正确的值使用它,我得到这个消息:preg_match():Unknownmodifier'('完整代码:$pattern="/^([123]0|[012][1-9]|31)/(0[1-

PHP:UTF8 中西里尔字符串的不区分大小写的 preg_replace

我有aPHP5.3script显示我网站的用户并想用它的旧名称替换某个俄罗斯城市(存储在PostgreSQL8.4.7数据库中的UTF8+CentOS5.5/64位Linux)(这是一个内部笑话):preg_replace('/Волгоград/iu','Сталинград',$city);不幸的是,这仅适用于完全匹配:Волгоград。这不适用于其他情况,例如ВОЛΓОΓРАД或волгоград。如果我将源代码修改为preg_replace('/[Вв]олгоград/iu','Сталинград',$city);然后它会捕获上面的第二种情况。有谁知道这是怎么回事以及如何

php - 具有特定长度的任何字符串的正则表达式模式

我想为preg_match构建模式,它将匹配长度为1-40个字符的任何字符串。我发现了这个:^[^但是我收到了这个错误信息:function.preg-match]:Unknownmodifier'有什么建议吗? 最佳答案 /^.{1,40}$/应该匹配任何长度为1到40个字符的字符串。它所做的是获取匹配所有内容的.,并重复它1到40次({1,40})。^和$是字符串开头和结尾的anchor。 关于php-具有特定长度的任何字符串的正则表达式模式,我们在StackOverflow上找到一

php - 使用预匹配过滤掉 iframe

我试图过滤掉帖子中的iframe,我的帖子看起来像这样BlitzperformsatDesifest2010inTorontoCanada,&FilmsmusicvideowithNavinKundraforthesong"LoveYouTheSame"featKatEyez&producedbyRoachKillafromBlitz'snewalbum"GetBlitz".Joinmyfanpageformore:WWW.FACEBOOK.COM/BLITZMUSIC*Specialthanksto:Deesha,DjJumpOff,PaulTheDrummer,Surgeon,Um

破折号的 PHP preg_replace 正则表达式

我正在尝试替换字符串中不是字母、数字或破折号“-”的任何内容。如何修改此行以包含破折号?$link=preg_replace('/[^a-z0-9]/',"",strtolower($_POST['link_name']));我只是把它插进去吗?$link=preg_replace('/[^a-z0-9-]/',"",strtolower($_POST['link_name'])); 最佳答案 你必须转义-因为它是正则表达式的特殊字符:$link=preg_replace('/[^a-z0-9\-]/','',strtolower(

php - 如何转义 preg_match 模式中的斜杠字符?

这个问题在这里已经有了答案:IsthereaPHPfunctionthatcanescaperegexpatternsbeforetheyareapplied?(2个答案)关闭4年前。我有这样一段文字:line1/1/1/2行短语之后的文本是函数的参数,例如当我调用extractData('1/1/1/2','Themaintext')时:functionextractData($line,$text){$pattern="/line(\s+)$line/";if(preg_match($pattern,$text)){//somecode}}如何转义模式中的斜杠字符?换句话说,我应该

php - 使用 preg_replace 删除 php 中两个字符串之间的文本

我一直在尝试从两个标签之间的站点字符串中删除一段文本。例如:ThisisCROPSTARTnotveryCROPENDcool....应该变成这样...Thisiscool.这是我试过的PHP,通常它可以工作:preg_replace('#\/\/CROPSTART[\s\S]+\/\/CROPEND#','',$string);但是,当字符串包含多个“CROPEND”时,它会裁剪从CROPSTART到最后一个CROPEND的所有内容。我希望它只在第一个CROPSTART和第一个CROPEND之间裁剪。有人知道怎么做吗?谢谢旺科 最佳答案

php - 使用 preg_match 查找所有 PHP 变量

如何使用preg_match找到所有PHP变量。我制作了以下正则表达式:$string='Hallo$var.blabla$var,$iamavar$varvarvargfgdjfjdfgjhfd$variable';$instring=array();preg_match_all('/\$(.*?)/',$string,$instring);print_r($instring);我只是不明白正则表达式是如何工作的。 最佳答案 \$(.*?)不是匹配PHP变量名的正确正则表达式。这样的aregularexpressionforaVa

php - addslashes() for preg_replace() 和 co.?

如何转义传入数据,以便在preg_replace()和consorts中将其用作模式?例如,我需要匹配这个字符串:/vorschau/显然,我需要对“v”进行转义,否则会出错。我在文档中找不到任何内容。是否有某种addslashes()或表达式中的解决方法? 最佳答案 如果我没有正确理解你的问题,你正在寻找preg_quote:stringpreg_quote(string$str[,string$delimiter=NULL])preg_quote()takesstrandputsabackslashinfrontofeveryc