我想使用正则表达式匹配字符串的第一个世界

时间:2017-07-14 12:50:36

标签: php regex

我有一个这样的字符串:

  

问题3。 R向北走35米,然后他向右转,走了20米,然后他向右转,走了25米。再次,他向右转,走了20米。点R从他的起点怎么样?

现在我想检查字符串的第一个字母是否以问题开头然后是数字然后是完全停止(。)所以字符串将启动将问题244。我正在使用

if(preg_match('/^[Question][0-9 ]{0,4}[.]/', $value)){
  echo "is a qeustion";
}else{
  echo "Not a question";
}

表达但它不起作用,

1 个答案:

答案 0 :(得分:3)

您可以使用

/^Question\s*\d+\s*\./i

请参阅regex demo

[Question]是一个匹配单个字符的字符类,Question。要匹配一系列数字,请使用\d+(1或更多)。 i修饰符使模式不区分大小。

<强>详情:

  • ^ - 字符串开头
  • Question - 字面不区分大小写(由于i)子字符串
  • \s* - 0+ whitespaces
  • \d+ - 一位或多位
  • \s* - 0+ whitespaces
  • \. - 文字.(与[.]相同但更短)。