This code (using single-quotes around the string loaded into $ErrorArray) works:
$ErrorArray = 'ErrorArray=\|\$mSysTray_Handle - System tray item not found: 0x0000000000000000\|\$mSysTray_Handle_Hidden - System tray overflow notification icon not found: 0x0000000000000000\|\$mSysTray_ButCount - No items found in system tray: 0x0000000000000000\|\$mSysTray_ButCount_hidden - No items found in overflow system tray: 0x0000000000000000'
$IgnoreErrors = Select-String -Path c:\junk\*.Error -Pattern $ErrorArray
$IgnoreErrors.Path
The value of the "Path" property was:
C:\junk\Elog.Error
Here's the content of the file I tested with:
ErrorArray=|$mSysTray_Handle - System tray item not found: 0x0000000000000000|$mSysTray_Handle_Hidden - System tray overflow notification icon not found: 0x0000000000000000|$mSysTray_ButCount - No items found in system tray: 0x0000000000000000|$mSysTray_ButCount_hidden - No items found in overflow system tray: 0x0000000000000000