示例文本文件行:如何找到一個字符不同
\folder_0 \folder-0 \folder-1 \folder'2 \folder-3 \folder_3 \folder'3 \folder,3 \folder,4
你怎麼找到的是一樣的吧一個字符的線條。例如:
\folder_0 \folder-0 \folder-3 \folder_3 \folder'3 \folder,3
示例文本文件行:如何找到一個字符不同
\folder_0 \folder-0 \folder-1 \folder'2 \folder-3 \folder_3 \folder'3 \folder,3 \folder,4
你怎麼找到的是一樣的吧一個字符的線條。例如:
\folder_0 \folder-0 \folder-3 \folder_3 \folder'3 \folder,3
請勿使用正則表達式。
首先定義一個給定兩個字符串(來自文件的行)返回true的函數,它們只有一個字符不同。
然後使用關聯數組收集基於該函數僅通過單個字符不同的行的組。
處理完文件後,關聯數組中包含多行的任何條目都是您想要的結果。
謝謝,一旦我知道我沒有重新發明輪子,我寫了一個腳本來做到這一點。 –
其中一個可能的方式如何...(在Perl)...
@m = (m/[\s\S]*?(?:^|\n)(?=(.*?)(.)(.*?)(?:\n|$)(?:[\s\S]*?\n|)(\1.\3)(?:\n|$))/g);
@p =();
while ($#m > 0) {
($a, $b, $c, $d) = (shift(@m), shift(@m), shift(@m), shift(@m));
push(@p, ("$a$b$c", $d));
}
@p = keys %{{map{$_ => 1} @p}};
測試此代碼here。
使用哪種工具或語言?另外,這些行必須是連續的嗎?最後,你有什麼嘗試? –
'\ folder-0'和'\ folder_3'相差兩個字符,那麼它們怎麼能在同一個結果集中呢? – hochl
@ hochl我認爲他不是指配對,而只是連續的配對。 –