草庐IT

lambda表达式

全部标签

php - 用PHP学习OO编码,static != 表达式,但是PHP手册上说凡是有值的都是表达式,一头雾水

几天前我开始学习面向对象,我对过程编码还算可以,但显然这还不够,我想成为一个有很多经验和知识的精通编码器,所以首先要完全学习必须是OO,然后是我认为正确的设计模式。无论如何,有一件事我卡住了,我不太明白......静态变量...我知道静态变量不会丢失它的值,即使包含的函数已完成执行,并且如果再次执行相同的函数将保持它的值,等等。但我不明白的是,您现在究竟可以将什么分配给静态变量?关于stackoverflow状态的手册和无数问题您不能将表达式分配给静态变量。所以我阅读了PHP手册,以找出究竟什么才算是表达式?手册答案是(我引用):“在PHP中,您编写的几乎所有内容都是表达式。定义表达式

用于匹配 UNC 路径的 PHP 正则表达式

我想在PHP中使用一些正则表达式来验证通过表单传递的UNC路径。它应该是这样的格式:\\server\something...并允许进一步的子文件夹。为了保持一致性,去掉尾部的斜线可能会很好,但如果需要的话我可以使用substr轻松地做到这一点。我在网上读到在PHP中匹配一个反斜杠需要4个反斜杠(当使用“C类字符串”时)并且我想我理解为什么会这样(PHP转义(例如2=1,所以4=2),然后正则表达式引擎转义(剩余的2=1)。我看到以下两个被引用为等价合适的正则表达式来匹配单个反斜杠:$regex="/\\\\/s";或者显然这也是:$regex="/[\\]/s";然而,这些会产生不同

php - 正则表达式匹配除单个数字以外的所有内容

匹配或不匹配除单个数字以外的所有内容的正则表达式是什么?例如,stack应该匹配stackoverflow应该匹配12389237应该匹配但是2应该不匹配我在^[^\d]+$上,但显然它不符合我的第三个条件。编辑:顺便说一句,这是针对PHP的。 最佳答案 把它分成两种情况。要么匹配一个不是数字的单个字符,要么匹配任何长度为2或更大的字符串:^(\D|.{2,})$ 关于php-正则表达式匹配除单个数字以外的所有内容,我们在StackOverflow上找到一个类似的问题:

php - 用于删除重复斜杠的正则表达式

你好吗?我有下一个任务。我有很多字符串可以包含重复的斜线。我需要将重复的斜杠替换为一个斜杠(任意数量的斜杠),但是当在斜杠之后找到下一个符号时(引号、双引号、NUL(NULL字节))——应该删除所有斜杠。谢谢。我的语言-PHP。一些测试:$s1='test\\\\string';//test\string$s2='test\\\\\"\\\\\'\\\\string';//test"'\string$s3='test\\string\\\\\"';//test\string" 最佳答案 使用preg_replace("~\\\\+(

php - 为什么这个正则表达式捕获会产生 2 个匹配项?

我不知道为什么除了使用此正则表达式的输入之外还找到了2个匹配项,而我预计只有1个匹配项。preg_match(/_(\d(-\d){0,3})\./,$str,$matches);关于这个文件字符串格式name_A-B-C-D.ext。我希望得到这样的单场比赛:ExampleA[0]=>name_A-B-C-D.ext[1]=>A-B-C-DExampleB[0]=>name_A-B-C.ext[1]=>A-B-C但这是我得到的结果:ExampleA[0]=>name_A-B-C-D.ext[1]=>A-B-C-D[2]=>-DExampleB[0]=>name_A-B-C.ext[1

PHP Preg 表达式从字符串中删除 html 标签和内部内容?

快速提问。我想从以下字符串中删除sup标签,以及其中的所有内容。$string="PriorityMail®International";我该怎么做? 最佳答案 我想像这样的东西会起作用:preg_replace("(.*?)is","",$input); 关于PHPPreg表达式从字符串中删除html标签和内部内容?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/105

php - 修改 Nginx 正则表达式,使其仅在某些情况下应用

我正在创建一个混合PHP/Node.js应用程序。对于PHP,我使用的是Yii框架。在Node.js中,我使用express。PHP通过Nginx运行。我使用proxy_pass指令将任何以/node开头的请求传送到在端口3000上运行的Node服务器(例如,server.com/node/api被代理到server.com:3000/api。)这在大多数情况下效果很好。然而,我的Nginx配置文件中的一个指令确保对不存在的静态文件的请求不会传递给Yii。相反,会返回一个简单的404错误。该指令的原始版本如下所示:location~\.(js|css|png|jpg|gif|swf|i

php - 这个正则表达式我做错了什么?

老实说,我真的不懂RegEx。所以我完全不知道我哪里出错了。我正在寻找一个仅接受字母数字字符的正则表达式(和下划线,用于用户名)。我在这里四处搜索,发现了很多我尝试过的RegEx示例,但没有一个有效。除其他外,我主要从这里的答案中获得,我已经尝试过^[a-zA-Z0-9_]*$/[^a-z_\-0-9]/i/^\w+$/为了匹配这些,我尝试了(使用每个正则表达式)if(preg_match("/^\w+$/",$username)){//don'taccept}和if(!preg_match("/^\w+$/",$username)){//don'taccept}和if(preg_ma

php - 正则表达式以 | 开头是什么意思?

这是一个例子:returnpreg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i',$url);这是另一个:preg_match_all("|]+>(.*)]+>|U","example:thisisatest",$out,PREG_PATTERN_ORDER);不是|正则表达式中的OR?正则表达式以|开头是什么意思? 最佳答案 他将它用作正则表达式分隔符,这是一个极其糟糕的想法,因为它阻止了它被用作OR运算符。虽然在处理URL或任何其他经常使用斜杠的

php - 正则表达式抓取括号内的所有文本,而不是引号

我正在尝试匹配{brackets}之间的所有文本,但如果它在引号中则不会:例如:$str='我{想要}的值(value),对比“我{不}想要”的值(value)'我的结果应该抢夺“want”,但省略“NOT”。我已经拼命搜索stackoverflow以寻找可以执行此操作但没有运气的正则表达式。我看到的答案允许我在引号之间获取文本,但不能在引号外和括号中获取文本。这可能吗?如果是的话,它是如何完成的?到目前为止,这是我所拥有的:preg_match_all('/{([^}]*)}/',$str,$matches);但不幸的是,它只会获取括号内的所有文本,包括{NOT}