草庐IT

REGEX_EXTRACT_ALL

全部标签

php - 在 preg_match_all() 中需要一些关于正则表达式的帮助

所以我需要从字符串中提取票号“Ticket#999999”。我该如何使用正则表达式来执行此操作。如果我在Ticket#9999中有多个号码,我当前的正则表达式可以正常工作。但是如果我只有Ticket#9,它就不起作用了,请帮忙。当前正则表达式。preg_match_all('/(Ticket#[0-9])\w\d+/i',$data,$matches);谢谢。 最佳答案 在您的模式中,[0-9]匹配1个数字,\w匹配另一个数字,\d+匹配1+个数字,因此#后需要3位数字。使用preg_match_all('/Ticket#([0-9

PHP preg_match_all 正则表达式从 css 获取像素值( "px")

我正在寻找与PHP的preg_match_all()函数一起使用的正则表达式,它将为我提供CSS文件中的所有px值。例如,如果使用下面的css,那么预期结果将是一个数组:array("11px","0.45px","11.0005px","1.1px","888.888px")$pattern字符串是我目前所拥有的——但是它似乎没有用。我尝试使用的逻辑是:小数点前最多4位,小数点符号可选,小数点后可选,最多4位,后面跟“px”。$pattern="/([0-9]{1,4}\.*[0-9]{1,4}*px)/";$css='.some_class{font-size:11px;margi

php - 如何使用 preg_match_all 从字符串中检索三个参数?

我试图从文本中获取所有出现的代码片段和3个参数。我使用正则表达式和preg_match_allPHP函数来执行此操作。如果我在文本中只出现一次该片段,则效果很好。如果有两个或更多,我会得到一个奇怪的结果。我不是很擅长正则表达式,所以我很难理解我错过了什么。函数publicfunctiongetGallerySnippetOccurrences($text){$ptn='/{#+gallery+(src|width|height)=\[(.*)\]+(src|width|height)=\[(.*)\]+(src|width|height)=\[(.*)\]+#}/';if(preg_m

php - 问题(in-)greedy RegEx

考虑以下字符串:1:cccbbb2:cccaaabbb我想结束这样的比赛:1:Array([1]=>[2]=>bbb)2:Array([1]=>aaa[2]=>bbb)如何在一个RegExp中匹配两者?这是我的尝试:#(aaa)?(.*)$#我已经尝试了很多贪婪和非贪婪修改的变体,但都没有奏效。只要我添加“?”一切都在[2]中匹配。使[2]变得不贪婪无济于事。如果我省略“ccc”,我的RegExp会按预期工作,但我必须在开头允许其他字符... 最佳答案 /(aaa)?((.)\3*)$/不过会有一个额外的[3]。我认为这不是问题。

PHP preg_match_all 在长字符串上失败

这是我的代码:$long=str_repeat('averylongstringtext',100);//trychanging100to5000$str=ashortstringtext$longSTR;preg_match_all('@([^]+)@sU',$str,$matched);print_r($matched);它完全按预期工作。但是,在你将100次重复更改为5000次之后,运行print_r($matched);而且您只会得到短字符串出现的结果。我的问题是如何使preg_match或preg_match_all处理大字符串文本(大至1MB或更大)?

PHP/RegEx - 通过检测 .com/.net/.org/.edu 等将 URL 转换为链接

我知道有很多问题要求帮助将URL转换为字符串中的可点击链接,但我还没有找到我正在寻找的东西。我希望能够匹配以下任何示例并将它们变成可点击的链接:http://www.domain.comhttps://www.domain.nethttp://subdomain.domain.orgwww.domain.com/foldersubdomain.domain.netsubdomain.domain.edu/folder/subfolderdomain.netdomain.com/folder我不想匹配random.stuff.separated.with.periods。编辑:请记住,这

php - 在没有括号的 RegEx 中分组竖线分隔的选项?

是否可以在不使用括号的情况下对正则表达式的各个部分进行分组?或者,换句话说,不匹配某些括号语句?这就是我的意思——考虑以下正则表达式:$pattern='/^(what|where|who)(are|is)(.+)$/i';preg_match($pattern,$input,$matches);现在。注意前两个子查询——带有竖线的子查询。我如何防止这些出现?如果$input是“whoishe”,我希望“he”是唯一匹配的子查询。我明白,在这个例子中,我可以只获取$matches[3],这会给我正确的结果。然而,由于我的应用程序的性质,我正在动态生成正则表达式,并且结构不会总是像我在这

php - 使用 REGEX 验证带有 GET 参数的域名

我正在尝试验证一个域是否确实具有带有preg_match和REGEX的GET参数,我要求它具有我的目的。我的工作是验证没有GET参数的域,如下所示:if(preg_match("/^[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}$/",'domain.com')){echo'true';}else{echo'false';}我在这个测试中得到了正确的结果。到目前为止一切顺利。我遇到的问题是添加GET参数,在我尝试过的许多REGEX中,仍然没有运气如下:if(preg_match("/^[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.

php - 创建将从 url 中提取图像名称的 javascript RegEx

我希望你能帮我创建一个正则表达式,从url中提取图像名称。几天来我一直在尝试创建正则表达式,但我无法让它工作。案例:我有一个用phpThumb创建的图像url,如下所示:\bla\thumb\phpThumb.php?src=/bla/images/thisistheimage.jpg&fltr[]=wmt|40|B|FFFFFF|georgia.ttf|35&hash=b7412f04f09cd6b488435231651d61453/p>不,我需要提取以下内容:thisistheimage.jpg一些事实:图片名称前总有一个“/”;图像名称后面始终跟有一个amp(&);图片扩展名也

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\.)[