草庐IT

php - 如何在 PHP 中使用正则表达式匹配嵌套的大括号?

我有一个要匹配的LaTeX文档。我需要匹配以下内容的RegEx匹配项:\#thebackslashinthebeginning[a-zA-Z]+#aword(\{.+\})*#anyamountof{something}不过,她是抓到的;在最后一行中,它1.需要贪婪,并且2.需要在其内部具有匹配数量的{}。意味着如果我有字符串\test{something\somthing{9}}它会匹配整体。它需要按此顺序({})。所以它不符合以下内容:\LaTeX{}isadocumentpreparationsystemforthe\TeX{}只是\LaTeX{}和\TeX{}帮助任何人?也许有

php - Zend Regex > 路由模块问题

我正在使用zend框架构建REST网络服务,我正在使用模块来分隔我的api版本,正如我提到的here例如:“applications/modules/v1/controllers”、“applications/modules/v2/controllers”具有不同的操作和功能集。我在我的application.ini中提到我的默认模块为“v1”正如我提到的那样,我正在使用上下文切换和正则表达式路由here在我接受的解决方案中:$router->addRoute('route1',newZend_Controller_Router_Route_Regex('api/([^-]*)/([^

php - 从 .htaccess 中的密码保护中排除一个文件

我有以下代码来保护.htaccess中带有密码的文件:AuthName"MemberOnly"AuthTypeBasicAuthUserFile/path/to/password/.htpasswdrequirevalid-user如何从此处排除should_be_excluded.php受密码保护?如果需要,我可以更改保护线,但我认为可以在正则表达式中做些什么? 最佳答案 怎么样:AuthName"MemberOnly"AuthTypeBasicAuthUserFile/path/to/password/.htpasswdrequ

php - 如何使用 RegEx 排除 [ ] 中的符号

我正在使用PHPpreg_match_all,这是我目前所能得到的......[A-Za-z+\W]+\s[\d]唯一的问题是我需要\W不是"。所以我试过:[A-Za-z+[^\dA-Za-z"]\s?]+\s[\d][A-Za-z+]\s?+[^A-Za-z\d"]?\s[\d]除其他外,它只是失败了,我真的不明白为什么。编辑:这是完整的正则表达式;([A-Z][a-z]+\s){1,5}\s?[^a-zA-Z\d\s:,.\'\"]\s?[A-Za-z+\W]+\s[\d]{1,2}\s[A-Z][a-z]+\s[\d]{4}我把它分成两行,第二行以我发布的内容开头。试图匹配的模式

php - 通过 php 和正则表达式从文本字符串中查找 url?

这个问题在这里已经有了答案:HowtoaddanchortagtoaURLfromtextinput(8个答案)关闭8年前。我知道问题标题看起来很重复。但是我在这里没有找到一些解决方案。我需要从文本字符串中查找url:$pattern='`.*?((http|https)://[\w#$&+,\/:;=?@.-]+)[^\w#$&+,\/:;=?@.-]*?`i';if(preg_match_all($pattern,$url_string,$matches)){print_r($matches[1]);}使用此模式我能够找到带有http://的网址和https://没关系。但我有用户

PHP - 解析字符串中的数学方程式

我正在努力寻找执行此操作的最佳方法。基本上,我会得到类似这样的字符串,任务是打印出经过数学分析的字符串。jack有[0.8*100]%的机会通过测试。凯蒂有[(0.25+0.1)*100]%的几率。数学方程总是用方括号括起来。为什么我要像这样处理字符串是一个很长的故事,但我非常感谢您的帮助! 最佳答案 PHP有很多数学计算库。快速网络搜索出现thisone.编写您自己的解析器也是一种选择,如果只是基本的算术运算,应该不会太困难。有了那里的资源,我会远离这个。您可以采用更简单的方法并使用eval.请注意先清理您的输入。关于evaldo

php - Eclipse/Aptana 正则表达式搜索和替换

在Aptana(Eclipse)中,我想用对象替换很多文件中的PHP关联数组:$requete["something"]通过$row->something我已经试过了,搜索:\$requete\[\"([\w.])+\"\]替换为:\$row->$1但是正则表达式引擎只接受搜索的最后一个字符:g表示某物欢迎任何想法!谢谢 最佳答案 正则表达式只匹配组的最后一个字符的原因是加号在单词匹配组之外。此外,不需要句点。要修复正则表达式,请将w之后的句点替换为加号\$requete\[\"([\w]+)\"\]

php - 如何在 preg_replace() 函数中使用 substr() 函数?

这是我目前所拥有的,但无论我尝试什么,我的album-content都不会被substr()截断。$gallery=preg_replace('/()(.*?)()/e',"'$1'.substr(\"$2\",0,50).'$3'",$gallery);更新:原来我的类名不正确,我的正则表达式似乎确实有效。我只需要执行另一个str_replace()来取消转义输出。$gallery=preg_replace('/()(.*?)()/e',"'$1'.substr(\"$2\",0,50).'$3'",$gallery);$gallery=str_replace('\"album-de

java - 正则表达式 X 和/或 Y

考虑以下正则表达式,其中X和Y是任何正则表达式。XY|YX|X|Y此正则表达式测试X和/或Y,但如果未找到“and”子句,则必须仔细检查表达式。匹配X和/或Y的最佳方式是什么? 最佳答案 正则表达式/XY?|YX?/应该可以匹配您列出的四种情况中的每一种。然而,这是有限的,因为如果您使用的正则表达式具有共同的匹配项,您可能会得到意想不到的结果。Withlimitedinformation,comeslimitedsolutions如果这是一个问题,或许可以在问题中添加更多要求。解释:前半部分将尝试匹配X正则表达式,然后将尝试匹配Y正

javascript - 正则表达式、组和量化器

我刚刚在http://regexcrossword.com/做了有趣的正则表达式填字游戏-发现我不明白量化组的含义,例如(.)+或(.)*让我试试http://ole.michelsen.dk/tools/regex.html,它提供了JavaScript和PHP正则表达式引擎:要匹配的字符串是“Trololo!”(不带引号)。(如果打开“全局匹配”改变了什么,它被添加为primed版本,即JS',因为它在PHP模式下没有改变任何东西。)JS,(.)+=>0:Trololo!1:!JS',(.)+=>0:Trololo!PHP,(.)+=>0:Trololo!0:!JS,(.)*=>0