【发布时间】:2023-03-31 14:49:01
【问题描述】:
以下最有效的preg_match 正则表达式是什么:
- 正则表达式必须匹配某个字符串(不区分大小写)
- 后面可以跟 [ 或 ; 然后别的东西
这些是“foo”的测试用例:
- foo --> 好
- 食物 --> 不好
- 富; --> 不好,后面需要一些东西;
- FOO;bar --> 好
- foo[bar] --> 好
- foo[ --> 不好,在 ]i> 之后需要一些东西
- fOo[bar]1;2;3 --> 好
这是我的测试代码:
<?php
$tests = array();
$tests[] = 'foo';
$tests[] = 'food';
$tests[] = 'foo;';
$tests[] = 'FOO;bar';
$tests[] = 'foo[bar]';
$tests[] = 'foo[';
$tests[] = 'foo[]';
$tests[] = 'fOo[bar]1;2;3';
foreach ($tests as $test)
{
echo $test, ' --> ';
$found = preg_match('REGULAR EXPRESSION HERE', $test);
if ($found === false || $found < 1)
echo 'bad';
else
echo 'ok';
echo '<br>', PHP_EOL;
}
?>
【问题讨论】:
-
你试过阅读正则表达式的教程/信息吗?看起来像是一项家庭作业,我建议您自己阅读并找到答案,从长远来看,它会对您有所帮助。
-
关于php语法的Idk,但python会匹配foo([|;)(.*)
-
@premiso 我 8 年前就已经毕业了(谢天谢地),我知道这很简单,但我讨厌正则表达式并尽量避免使用它们。我正在慢慢学习它们,但仍然:) 我仍然需要找到一个关于它们的好网站。我所有的都过于复杂......
-
regular-expressions.info « 这是一个关于正则表达式的好网站。
-
我看到你对正则表达式提出了很多问题,请允许我向你推荐这个:amazon.com/Mastering-Regular-Expressions-Jeffrey-Friedl/dp/…