我被困在这里,我的问题找不到任何结果,也许是因为英语不是我的母语.
我想匹配一个序列中包含最多30个字母/数字的行:
这是否可以使用preg_match?
preg_match("/[^A-Za-z0-9](max 30 in a sequence)/", $string)
Run Code Online (Sandbox Code Playgroud)
字符串:
$string = "1234567890123456789012345678901234567890"; // FALSE
$string = "sdfihsgbfsadiousdghiug"; // TRUE
$string = "cfgvsdfsdf786sdf78s9d8g7stdg87stdg78tsd7g0tsd9g7t"; // FALSE
$string = "65656.sdfsdf.sdfsdf"; // TRUE
$string = "ewrwet_t876534875634875687te8---7r9w358wt3587tw3587"; // TRUE
$string = "sd879dtg87dftg87dftg87ftg87tfg087tfgtdf8g7tdf87gt8t___454"; // FALSE
Run Code Online (Sandbox Code Playgroud) 我正在使用正则表达式字边界\ b,我正在尝试匹配foo以下$sentence但结果不是我需要的,underscore是杀了我,我想要下划线是字边界就像连字符或空格:
$sentence = "foo_foo_foo foo-foo_foo";
X X X YES X X
Run Code Online (Sandbox Code Playgroud)
预期:
$sentence = "foo_foo_foo foo-foo_foo";
YES YES YES YES YES YES
Run Code Online (Sandbox Code Playgroud)
我的代码:
preg_match("/\bfoo\b/i", $sentence);
Run Code Online (Sandbox Code Playgroud)