对于经验丰富的正则表达式专家来说,这可能是一个快速的问题,但我无法正确执行我的匹配。假设我有一个看起来像这样的字符串:http://aaa-bbbb-cc-ddddd-eee-.sub.dom我想捕获所有的“aaa”、“bbbb”、“cc”和“ddddd”子字符串,但我不确定会有多少(例如,让所有三元组到“zzz").这是我现在尝试使用的正则表达式:/http:\/\/(\w*?\-)+\.sub\.dom/我这样写是因为:我想匹配子串,但我希望每个子串在解析-时终止我想捕获一个或多个这些子串但它似乎只保存它进行的最后匹配(在上面的例子中,它只会匹配“eee-”。有没有什么好的方法可以
我正在尝试使用正则表达式清理用户在PHP中提交的评论,但变得相当卡住和困惑!是否可以使用正则表达式来:删除重复两次以上的标点符号,以便:天啊,太棒了!!!!变成了天哪,太棒了!!!!!!!!!!!!............----变成!!..--!?!?!?变为!?删除重复的单词或短语(例如,用户复制并粘贴了一条消息)以便:spamspamspamspam变成了spam我喜欢复制和粘贴。我喜欢复制和粘贴。Ilovecopyandpaste.变成Ilovecopyandpaste.删除大于10个大写字母的字母和空格的集合:ILOVECAPITALSTHETheyARESOWESOME变为
我想在php中CaPiTaLiZe$string,不要问为什么:D我做了一些研究并在这里找到了很好的答案,他们真的帮助了我。但是,就我而言,我想开始将每个单词中的每个奇数字符(1,2,3...)大写。例如,使用我的自定义函数,我得到这个结果“TeSteXaMpLe”并且想要得到这个“TeStExAmPlE”。看到第二个例子中单词“example”以大写字母“E”开头了吗?所以,有人可以帮助我吗?:) 最佳答案 好吧,我会把它做成一个数组,然后再把它放回去。$letter){if($caps){$out=strtoupper($let
我有这个代码。它打印出我想要的312,3。但是,如果我提供像D12/336这样的输入,那么它就不起作用了。我想让它打印336,D12我该怎么做?以及我当前不处理此字母数字的代码有什么问题?是因为我用了\d吗?编辑:我希望它也能处理这样的输入148/DIG.111那么输出应该是DIG.111,148 最佳答案 是的\d只包含数字。您可以尝试\w而不是字母数字,但另外它还包括_要成为Unicode,您可以努力~[\pL\d.]+/[\pL\d.]+~u\pL是具有“字母”属性的Unicode代码点最后的u开启使用该功能所需的UTF-8模
我需要一个preg_replace语法来在我拥有的字符串中的图像标签的/>之后添加一些东西(任何东西)。比如$string="hereisastring!"需要成为...$string="hereisastring!" 最佳答案 $string='';$result=preg_replace('/(]+>(?:)?)/i','$1',$string);这将匹配以及任何大写变体。表达式的分解:外括号-匹配正则表达式并捕获到反向引用1匹配字符从字面上看匹配任何不是>的字符尽可能多的次数在1次到无限次之间匹配字符>字面意思(以说明在发现时
我怎样才能得到所有的带有width>=300?我的标记/代码:$images=...END;我的尝试:preg_match_all("//",$images,$matches);print_r($matches); 最佳答案 为此使用正则表达式不是一个好主意。这适用于您的特定示例,但它有许多问题,因为正则表达式无法正确解析HTML:"/]*width=\"([3-9][0-9]{2}|[1-9][0-9]{3,})\"[^>]*>/"在线查看它:ideone我建议您改用HTML解析器。相关RobustandMatureHTMLPar
我有以下字符串:test13(8)end12(14:48IN1ST)我需要的输出是:14:48IN1ST或括号内的所有内容到字符串的末尾。我不需要,第一组括号内的8。字符串中可以有多组括号。我只需要考虑输入字符串最后一组括号内的所有内容。 最佳答案 正则表达式解释.*Gotolast\(Starswith(([^)]*)0ormorecharacterexcept)\)Endswithpreg_match$str="test13(8)end12()(14:48IN1ST)asd";$regex="/.*\(([^)]*)\)/";p
我为无法弄清楚这一点而感到非常愚蠢,但我就是想不通。我需要用模式替换正则表达式字符串,我找到了两个这样做的例子,但老实说,它们让我比以往任何时候都更加困惑。这是我目前的尝试:$string='2614:46:54",,"2011-08-2614:47:02",8,0,"BUSY","DOCUMENTATION","1314370014.18","","","61399130249","7466455647","from-internal","""OhSnap""","SIP/1037-00000014","SIP/CL-00000015","Dial","SIP/CL/61436523
任何人都可以提供有效的正则表达式帮助吗?我有一个包含类似函数的文件$variable1=tr('Thiswaswrittenin%s.',array($year));或tr('Thiswaswrittenin%s%s.',array($month,$year));或tr('somestring')字符串总是用单引号引起来。我需要从使用fopenfundtion获得的源文本中提取所有传递给tr()函数的字符串。我使用php来解析php文件。有帮助吗?更新作品:$fileContents=file_get_contents($file);preg_match_all("/tr\('(.*?
我想获取海盗湾的统计数据,统计数据可以在TPB上的以下div中找到:5.695.184registeredusersLastupdated14:46:05.35.339.741peers(25.796.820seeders+9.542.921leechers)in4.549.473torrents.这是我的代码:)(.*?)()(.*?)/','$2',$data);echo$data;curl_close($ch);exit;?>如您所见,我使用以下preg-replace模式来去除HTML:$data=preg_replace('/(.*?)()(.*?)()(.*?)/','$2