草庐IT

三元表达

全部标签

java - boolean 查询/表达式到具体语法树

我正在创建一个允许boolean表达式的搜索表单,例如:“fooANDbar”或“fooANDNOTbar”。有没有适用于PHP、Ruby或Java的库可以将boolean表达式转换为具体的语法树?(我可以编写自己的词法分析器/解析器,但我宁愿使用经过试验和测试的东西)编辑:澄清一下,我不是在解析心律失常的表达。它将用于解析允许boolean运算符的全文查询。 最佳答案 我推荐Treetop.它是一种为您的PEG(ParsingExpressionGrammar)生成解析器的迷你语言。它比LALR文法更容易使用,并且比递归下降解析器

php - 表达式中的变量赋值如何工作?

这是我以前见过的一种做法,但不是很常见:在对值本身求值的同时将变量分配给一个值(或者是对表达式本身求值?)。示例://Outputs"Thevalueis1"$value=1;if($var=$value){echo"Thevalueis$var";}似乎与:$value=1;$var=$value;if($var){echo"Thevalueis$var";}另一个例子://Outputs"Thevalueis1"$value=1;echo"Thevalueis".$var=$value;我一直在使用它来缩短我的代码,主要是第一个示例:用于评估第一个变量或表达式,同时将其分配给同一表

php - 使用字符串值作为 if/else 表达式

这可能是最愚蠢的问题,答案可能是否定的,但是......是否可以在if语句的表达式中使用字符串的值?例如,说我通过了'ifstrcasecmp("hello","Hello")==0'给一个函数并将其命名为$string,然后我可以将该值用作if语句的条件评估吗?if(thevalueof$string){}我知道eval()会像执行PHP代码一样执行字符串,但实际上会执行它并返回null/false,而不是只允许围绕字符串的PHP处理字符串的内容。我还知道您可以通过使用${$varname}来使用可变变量,这将告诉php使用$varname的值作为变量的名称。所以我想我正在寻找的是某

php - 为什么 unset() 在 PHP 三元运算符中不起作用

所以这有问题,但我对此视而不见。即使阅读了两次文档(PHPComparisonOperators)isset($items['blog'])?unset($items['blog']):NULL;Parseerror:syntaxerror,unexpectedT_UNSET 最佳答案 您不能在三元运算中使用unset,因为它不是可以运算的表达式。它是一种语言结构(如isset和echo),不能放在那里。只需使用它就可以了,不需要任何决定:unset($items['blog']); 关

PHP preg_split,表达式 i 大括号并保存定界符

我已经为此苦苦挣扎了半天,但我似乎找不到答案。请帮助菜鸟。:)我有一个字符串,它由几个放在大括号中的句子组成。它看起来像这样:{super骗人的额外文字。}{很棒的另一个文字!}{我们又来了...}现在我想拆分它。我发现我可以搜索.}{等模式。所以我这样做了:$key=preg_split('/[!?.]{1,3}\}\{/',$key);但是这样我失去了定界符,我失去了所有那些。!?等在句末。我试过这样做:$key=preg_split('/([!?.]{1,3}\}\{)/',$key,-1,PREG_SPLIT_DELIM_CAPTURE);$sentences=array();

php - 是否可以在 PHP 中为此语句创建一个三元运算符?

functioninteger($str){if(preg_match('/[^0-9]/',$str)){returnFALSE;}else{return$str;}}是否可以在PHP中为该语句创建一个三元运算符? 最佳答案 是的:functioninteger($str){return(preg_match('/[^0-9]/',$str)?false:$str);} 关于php-是否可以在PHP中为此语句创建一个三元运算符?,我们在StackOverflow上找到一个类似的问题:

PHP:是否有可能以某种方式将 HTML 嵌入到三元运算符的中间?

例如,我可以做类似下面的事情吗?htmlgoeshere.somethingelse.该代码无效。所以我猜这是不可能的,是吗? 最佳答案 你不能像那样嵌入HTML,因为你过早地终止了三元表达式,导致解析错误。替代的if-else结构更具可读性。对于额外的几个字符,您将获得更容易理解的代码块:htmlgoeshere.somethingelse.您也可以使用花括号语法,但我不喜欢在我的代码周围看到杂散的、未标记的}。 关于PHP:是否有可能以某种方式将HTML嵌入到三元运算符的中间?,我们

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

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

php - javascript 和 PHP 上的三元运算符,不同的输出

我想做Fizzbuzz在php中使用一元if,但输出不是我期望的,我不明白为什么,所以我将代码复制粘贴到javascript,现在结果符合预期。为什么?$(function(){papa='JavascriptOutput:';for($i=1;$i输出PHPOutput:12Buzz4BuzzBuzz78BuzzBuzzJavascriptOutput:12Fizz4BuzzFizz78FizzBuzz 最佳答案 javascript中的三元运算符(您称为“一元if”)使用右结合性,而php中的相同运算符使用左结合性。javasc

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

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