Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何检查自定义字符串格式包含'/';_Php_Regex - Fatal编程技术网

Php 如何检查自定义字符串格式包含'/';

Php 如何检查自定义字符串格式包含'/';,php,regex,Php,Regex,我有一个文本输入,可以搜索主题、主题名、学期/年,并希望在单个输入中搜索所有内容 1/2010 -/---- 我需要检查结果是真是假。 如何做到这一点?如果您要检查特定的格式,我建议使用正则表达式。 [0-9]/[0-9]{4}将匹配任何后跟“/”和4个数字的数字。如果您想要字母和数字,则[0-9a-zA-Z]/[0-9a-zA-Z]{4}将匹配该值。尝试使用。然后做一个if-else语句 if (strpos($string, '/') == false) //the '/' does

我有一个文本输入,可以搜索主题、主题名、学期/年,并希望在单个输入中搜索所有内容

1/2010


-/----
我需要检查结果是真是假。
如何做到这一点?

如果您要检查特定的格式,我建议使用正则表达式。
[0-9]/[0-9]{4}
将匹配任何后跟“/”和4个数字的数字。如果您想要字母和数字,则
[0-9a-zA-Z]/[0-9a-zA-Z]{4}
将匹配该值。

尝试使用。然后做一个if-else语句

if (strpos($string, '/') == false) //the '/' does not exist
  execute code
else
  execute code

学期为1或2,因此您可以使用:

if (preg_match('#\b[12]/\d{4}\b#', $string)) {
    echo "match\n";
}
\b
是一个单词边界,假设数字前面没有单词字符
[12]
匹配数字1或2
/
是文字
/

\d{4}
匹配4位数字

\b
是一个单词边界,假设数字后面没有单词字符

你的意思?但我不知道如何使用strpos检查位置。
if(strpos($customstring,“/”)!==false){echo“Found Slash”}
是的,我编写正则表达式是为了直观简单——但M42答案中对正则表达式和实现的解释更好。