我需要你的帮助,我有一个txt文件,其中包含自动加载的以下信息:
<?php
foreach ($post_titles as $i => $title) {
echo $title . '<br>' . $posts[$i] . '<br>';
}
?>
我需要在控制台中仅打印以D
开头的行我尝试使用if statment或者但是我没有真正得到它
U 00024791
0212-204T2HT
Caracas, 12 de Julio de 2016
SAVAKE CA
Estimado SCARLET
D 1089274 101548895 444.825,68 BS
D 6555555 101548895 444.825,68 BS
D 9563221 101548895 444.825,68 BS
FIN SCARLET SANCHEZ
注意:以D开头的行并不总是三行,它会有所不同,这意味着它可能超过以D开头的10行,在这种情况下,我必须在控制台上打印所有这些行。
答案 0 :(得分:1)
试试这个:
string[] readText = File.ReadAllLines(@"p:\CARTAP1.txt");
foreach (string s in readText)
{
if (s.Trim().StartsWith("D"))
{
Console.WriteLine(s);
}
}
和Linq一起:
string[] readText = File.ReadAllLines(@"p:\CARTAP1.txt");
foreach (string s in readText.Select(s => s.Trim()).Where(s => s.StartsWith("D")))
{
Console.WriteLine(s);
}
答案 1 :(得分:0)
这个怎么样:
File.ReadAllLines(@"p:\CARTAP1.txt").Where(w => Regex.IsMatch(w, @"^\s*D"));