title: Angular2 change detection issue. Input field doesn't update if class field does'n change, but input field value is different
body: <p>I create simple example: <a href="https://plnkr.co/edit/78jxt9NHwWyqa6phJq1Y?p=preview" rel="nofollow">plnkr</a>. Try to enter something like 123qwe in first field. "qwe" doesn't disappear. But if enter a new digit all non-digit characters will disappear.</p>
  
  <p>In second field non-digit characters is replacing by '!' and it field works as expected.</p>
  
  <p>My code:</p>
  
  <pre><code>@Component({
    selector: 'my-app',
    providers: [],
    template: `
      &lt;div&gt;
        Doesn't work: &lt;input [value]="val | replace:pattern:''" (input)="val=$event.target.value"&gt;
        &lt;br&gt;
        Works: &lt;input [value]="val2 | replace:pattern:'!'" (input)="val2=$event.target.value"&gt;
      &lt;/div&gt;
    `,
    directives: []
  })
  export class App {
    val: string = "";
    val2: string = "";
    pattern = /[^0-9]/g;
    constructor() {
    }
  }
  </code></pre>
  
  <p>Is there any workaround to make first field work like a second but with replacing with empty string? Is there expected behavior?</p>