【发布时间】:2017-07-05 14:08:23
【问题描述】:
我正在尝试在 switch 中存在特定字符串时编写逻辑。
例如:字符串
* * * * * 我的字符串将始终在每个字符串之间的这种格式空间中,但字符串长度会有所不同。但是 5 个空格和 5 个字符串
其他示例:
0 * * * *
* 0 * * *
* * 12/3 * *
* * 0 0 *
0 0 * * *
* * * 0 0
* * * AA 12
我在这里尝试的是在字符串存在时编写 switch case,而不是 * 我将运行 case。
switch(true):
case '0 * * * * ':
echo 'First string has value';
case '`* * 0 0 * `':
echo '3rd & 4th string has value';
case 'A B C AA 12 ':
echo 'All string has value';
等等...
我有很多组合,但我不确定 switch 是实现它的正确方法。
或逻辑 2:
我应该用空格分解字符串然后使用if条件检查5个字符串吗?
【问题讨论】:
-
这是原理图的问题,从长远来看,切换可能会更容易,然后如果其他情况。另一种方法是使用正则表达式并计算匹配项。
-
/([^*\s]+)/这样的东西不匹配空格或星号regex101.com -
一个开关是不同的,如果 1 个 case 与下面的那些匹配,直到被
break破坏。只需分解并验证数据,或者在需要时使用正则表达式。
标签: php logic preg-split