1

2 つのファイル間の差分に対応する output の値を取得します。

output = 'a.x: low 0 -> low 1a.b : 3 -> Medium 6'

それから私printfはコンテンツ

sprintf('files are different \n%s', output);

しかし、次のように表示したいと思います(ワードラップ):

output :

a.x: low 0 -> low 1 
a.b : 3 -> Medium 6 
4

1 に答える 1

1

正規表現を使用して文字列を切り刻むことができます

chopped = regexpi(output, '^(?<line1>[^>]*>[^\d]*[\d]*)(?<line2>.*)$', 'names')

ここでトリックを行います。

>> chopped = 

    line1: 'a.x: low 0 -> low 1'
    line2: 'a.b : 3 -> Medium 6'

仮定は次のとおりです。

  1. あなたは常に->最初の行にシングルを1つ持っています
  2. 最初の行は常に次の後の最初の数字で終わります->
  3. 整数の最初の行を終了する数値

正規表現に慣れていない場合

  • (?<line1> )変数(?<line2> )内の一致をキャプチャするためにここにいます。chopped
  • [^>]*最初まで消費する>
  • [^\d]*数字以外のすべての文字を消費します(したがって、次の数字が始まるまで)
  • [\d]*すべての数字を消費します
  • .*文字列の残りを消費します
于 2012-09-10T08:11:56.263 に答える