正则表达式读取以精确单词开头的行


Regular Exp to read lines that starts with exact word

我需要读取以单词"TEMP"开头的行,为此我写为:

$Temp_line= preg_grep('/^['s]*TEMP[^'r'n]*/m', $data);
print_r($Temp_line);

将输出打印为:

"阵列([53]=>TEMP 650.0!温度(K)[131]=>Temperature 650.0000 K[899]=>Temperature 2541.0376 K)"

但我只想阅读:

"阵列([53]=>TEMP 650.0!温度(K)"

如何使用preg_match编写模式?

^'s*'bTEMP'b[^'r'n]*

试试这个。请参阅演示。

http://regex101.com/r/qC9cH4/11

您需要在TEMP:之后匹配一个宽空格字符('s

$Temp_line= preg_grep('/^'s*TEMP's[^'r'n]*/m', $data)