Behat\Gherkin\Lexer::scanTableRow PHP Method

scanTableRow() protected method

Scans Table Row from input & returns it if found.
protected scanTableRow ( ) : null | array
return null | array
    protected function scanTableRow()
    {
        if (!$this->allowMultilineArguments) {
            return null;
        }
        $line = $this->getTrimmedLine();
        if (!isset($line[0]) || '|' !== $line[0] || '|' !== substr($line, -1)) {
            return null;
        }
        $token = $this->takeToken('TableRow');
        $line = mb_substr($line, 1, mb_strlen($line, 'utf8') - 2, 'utf8');
        $columns = array_map(function ($column) {
            return trim(str_replace('\\|', '|', $column));
        }, preg_split('/(?<!\\\\)\\|/u', $line));
        $token['columns'] = $columns;
        $this->consumeLine();
        return $token;
    }