﻿<?xml version="1.0" encoding="utf-8"?>
<heuristics>
<!-- Move heuristics are NOT case sensitive, replace heuristics ARE case sensitive -->
  <!-- Version heuristics -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d8ac}" operation="move" to="version" conditions="null" description="Move version text from program Name (also the words version, ver, v) if null version" >
    <expresion><![CDATA[[ \,][\(]?(ver(sion)?)?v?[ \.]*[0-9]+\.[0-9]+(\.[0-9]+)*[a-z]?\)?([ ]*\(?build[ \:]?[0-9\.]*[ a-z\)]*)?]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-ffff-6521da95d8ac}" operation="move" to="version" conditions="null" description="Move version text from program Name (also the words version, ver, v) if null version, exclude case,parentheses" >
    <expresion><![CDATA[(?i)(ver(sion)?)?v?[ \.]*[0-9]+\.[0-9]+(\.[0-9]+)*[a-z]?[0-9]*([ \,]*(build[ \:]?[0-9\.]*[ a-z]*|\(build.*?\)))?]]></expresion>
  </heuristic>
  <heuristic id="{02321533-1810-4ace-98c8-6521da95d8ac}" operation="replace" to="" conditions="none" description="Remove version text from program Name (also the words version, ver, v) if null version" >
    <expresion><![CDATA[[ \,][\(]?(ver(sion)?)?v?[ \.]*[0-9]+\.[0-9]+(\.[0-9]+)*[a-z]?\)?([ ]*\(?build[ \:]?[0-9\.]*[ a-z\)]*)?]]></expresion>
  </heuristic>
  <heuristic id="{02321533-1810-4ace-ffff-6521da95d8ac}" operation="replace" to="" conditions="none" description="Remove version text from program Name (also the words version, ver, v) exclude case,parentheses" >
    <expresion><![CDATA[(?i)(ver(sion)?)?v?[ \.]*[0-9]+\.[0-9]+(\.[0-9]+)*[a-z]?[0-9]*([ \,]*(build[ \:]?[0-9\.]*[ a-z]*|\(build.*?\)))?]]></expresion>
  </heuristic>
  <heuristic id="{2553464e-cbef-4b0d-b396-ad0bd036fbdb}" operation="replace" to="" conditions="none" description="Remove the string 'version' from version field.">
    <expresion><![CDATA[\s*version\s*]]></expresion>
  </heuristic>
  <heuristic id="{2553464e-cbef-4b0d-ffff-ad0bd036fbdb}" operation="replace" to="$2" conditions="none" description="Remove 'v'/'ver'/'version' from version field" >
    <expresion><![CDATA[(?i)^(v|ver|version)\.?\s?([0-9])]]></expresion>
  </heuristic>
  <heuristic id="{74ab4b34-a22e-4d49-b0fc-230cae576e4a}" operation="replace" to="$1" conditions="none" description="Remove leading zeroes from version" >
    <expresion><![CDATA[0+([1-9])]]></expresion>
  </heuristic>
  <heuristic id="{0ef3c6db-c473-410d-8d65-3b557d19919a}" operation="replace" to="" conditions="none" description="Remove 'N/A' from version field">
    <expresion><![CDATA[\s*N/A\s*]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-1553-4ace-98c8-1810da95d805}" operation="replace" to="" conditions="none" description="remove extra . from begining/end" >
    <expresion><![CDATA[(^\.+)|(\.+$)]]></expresion>
  </heuristic>
  <heuristic id="{6fe152a8-17a6-42da-885d-8d8a4dd5035e}" operation="replace" to="" conditions="none" description="Remove . and padding at end of string" >
    <expresion><![CDATA[\s+\.\s*$]]></expresion>
  </heuristic>
  <!-- Edition heuristics -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d889}" operation="replace" to="edition" conditions="none" description="Extract edition and replace with edition " >
    <expresion><![CDATA[(?<edition>[a-z\.]+\ edition[a-z0-9_]*)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d88a}" operation="replace" to=" " conditions="none" description="Eliminate edition text from programName (+the word before edition)" >
    <expresion><![CDATA[[ ]?[a-z\.]+\ edition[a-z0-9_]*]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d880}" operation="replace" to=" " conditions="none" description="Eliminate Game Of The Year" >
    <expresion><![CDATA[Game Of The Year]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d881}" operation="replace" to=" " conditions="none" description="Eliminate Game Of The Year combination and editions" >
    <expresion><![CDATA[\s(game\sof\sthe\syear|game\sof\sthe\syear\sed(ition)?)$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-0521da95d881}" operation="replace" to=" " conditions="none" description="Eliminate Game Of The Year ed" >
    <expresion><![CDATA[\s(Game\sOf\sThe\sYear|Game\sOf\sThe\sYear\sEd)$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d882}" operation="replace" to=" " conditions="none" description="Eliminate editions" >
    <expresion><![CDATA[(^|\s)[^\s0-9]+\s(Ed|Edition)($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d883}" operation="replace" to=" " conditions="none" description="Eliminate edition combination" >
    <expresion><![CDATA[(^|\s)(?<edition>[^\s0-9]+)\s(Ed|Edition)($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d884}" operation="replace" to=" " conditions="none" description="Eliminate edition variants" >
    <expresion><![CDATA[\s(Deluxe|Enterprise|Essentials|Platinum|Premier|Premium|Pro|Professional|Standard|Ultimate|Production(\sBundle)?)\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d885}" operation="replace" to=" " conditions="none" description="Eliminate edition variants" >
    <expresion><![CDATA[\s(?<edition>(Deluxe|Enterprise|Essentials|Platinum|Premier|Premium|Pro|Professional|Standard|Ultimate|Production(\sBundle)?))\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4abe-98c8-6521da95d886}" operation="replace" to=" " conditions="none" description="Eliminate express" >
    <expresion><![CDATA[\sExpress\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4abe-98c8-6521da95d887}" operation="replace" to=" " conditions="none" description="Eliminate express" >
    <expresion><![CDATA[\s[^\s]+\sExpress\s*$]]></expresion>
  </heuristic>
  <heuristic id="{123277b2-63cc-4abe-98c8-6521da95d880}" operation="replace" to=" " conditions="none" description="Eliminate edition" >
    <expresion><![CDATA[\s[^\s0-9]+\sEd($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{123277b2-63cc-4abe-98c8-6521da95d881}" operation="replace" to=" " conditions="none" description="Eliminate edition" >
    <expresion><![CDATA[\s(?<edition>[^\s0-9]+)\sEd($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{123277b2-63cc-4abe-98c8-6521da95d882}" operation="replace" to=" " conditions="none" description="Eliminate Ed" >
    <expresion><![CDATA[\sEd($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{123277b2-63cc-4ace-98c8-6521da95d883}" operation="replace" to=" " conditions="none" description="Eliminate editions combinations at end of line" >
    <expresion><![CDATA[\s(Deluxe|Essentials|Platinum|Premier|Premium|Professional|Standard|Ultimate|Alpha|Beta|Lite|Uninstall|Trial|Redistributable|Plus|Express|Pro|RC)\s*$]]></expresion>
  </heuristic>
  <heuristic id="{123277b2-63cc-4abe-98c8-6521da95d823}" operation="replace" to=" " conditions="none" description="Eliminate editions" >
    <expresion><![CDATA[\s()\s*$]]></expresion>
  </heuristic>
  <!--Handle X86, X64, IA64-->
  <heuristic id="{023277b2-1234-5678-98cb-6521da95d89b}" operation="replace" to="32-Bit" conditions="null" description="empty string with 32-Bit to be used for architecture=null" >
    <expresion><![CDATA[]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d890}" operation="replace" to="32-Bit" conditions="none" description="Replace x86 with 32-Bit" >
    <expresion><![CDATA[(\s|\()x86(\s|\)|$)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d891}" operation="replace" to="64-Bit" conditions="none" description="Replace x64 with 64-Bit" >
    <expresion><![CDATA[(\s|\()x64(\s|\)|$)]]></expresion>
  </heuristic>    
  <heuristic id="{921b9b1d-7232-43f8-aad5-7965e96d9341}" operation="replace" to="" conditions="none" description="remove x86">
    <expresion><![CDATA[(\s|\()x86(\s|\)|$)]]></expresion>
  </heuristic>
  <heuristic id="{921b9b1d-7232-43f8-aad5-7965e96d9343}" operation="replace" to="" conditions="none" description="remove x64">
    <expresion><![CDATA[(\s|\()x64(\s|\)|$)]]></expresion>
  </heuristic>
  <heuristic id="{921b9b1d-7232-43f8-aad5-7965e96d9345}" operation="replace" to="" conditions="none" description="remove dd-bit">
    <expresion><![CDATA[(\s|\()(\d+\s?&+\s?)?\d+[-\s]?bit(\s|\)|$)]]></expresion>
  </heuristic>
  <!-- General -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d810}" operation="replace" to=" " conditions="none" description="Remove Upgr/ Upgrade / UPGRADE / Update / Update to d.d'" >
    <expresion><![CDATA[(^|\s)(upgr(ade)?|update)(\s(to)?(\s|\d)+\.?\d?)?($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d811}" operation="replace" to=" " conditions="none" description="Remove Expansion Pack" >
    <expresion><![CDATA[\s(Expansion\sPack)($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d814}" operation="replace" to=" " conditions="none" description="Remove - before another - Replace with space and -"  >
    <expresion><![CDATA[\s-\s*-]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d815}" operation="replace" to=" " conditions="none" description="Remove the trailing -" >
    <expresion><![CDATA[\s-\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d817}" operation="replace" to=" " conditions="none" description="Remove the trailing spaces" >
    <expresion><![CDATA[:\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d818}" operation="replace" to=" " conditions="none" description="Remove the leading PC" >
    <expresion><![CDATA[^PC\s]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81a}" operation="replace" to="Client/Server" conditions="none" description="leading Clnt/Svr with Client/Server" >
    <expresion><![CDATA[^Clnt/Svr\s]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81b}" operation="replace" to="Microsoft " conditions="none" description="leading MS with Microsoft" >
    <expresion><![CDATA[^MS\s]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81c}" operation="replace" to="Enterprise " conditions="none" description="Entpr with Enterprise" >
    <expresion><![CDATA[\sEntpr($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81d}" operation="replace" to=" " conditions="none" description="Remove 3User, for example" >
    <expresion><![CDATA[\s[0-9]+User($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81e}" operation="replace" to=" " conditions="none" description="Remove Upgr" >
    <expresion><![CDATA[\sUpgr($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d81f}" operation="replace" to=" " conditions="none" description="Remove Acad" >
    <expresion><![CDATA[\sAcad($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d820}" operation="replace" to=" " conditions="none" description="Remove Expansion Pack" >
    <expresion><![CDATA[\s(Expansion\sPack)($|\s)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d821}" operation="replace" to=" " conditions="none" description="Remove the license information" >
    <expresion><![CDATA[(Clnt\sAcc)?\s?(CLP|CTL|OLP|OPEN|SELECT|SLM|TLP|VLA|VLP)?\s?(Home\sUse\sOption|Mnt|Pass\sAdv\sMnt|Perpetual|SMB)?\sLic($|\s)(Comp|Govt|Promo)?]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d822}" operation="replace" to=" " conditions="none" description="Remove Gold or Gold Pack" >
    <expresion><![CDATA[\s(Gold|Gold\sPack)\s*$]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d823}" operation="replace" to=" " conditions="none" description="Remove Silver or Silver Pack" >
    <expresion><![CDATA[\s(Silver|Silver\sPack)\s*$]]></expresion>
  </heuristic>
  <heuristic id="{df20a3b2-08f8-4050-b9f3-a4101de0190e}" operation="replace" to=" " conditions="none" description="Remove 'refurb' and 'refurbished'">
    <expresion><![CDATA[((^|\s)(ref(urb(ished)?)?))+($|\s)]]></expresion>
  </heuristic>
  <!-- Handle spaces -->
  <heuristic id="{1a474447-2bb7-4d38-9a35-9636af839ea8}" operation="replace" to=" " conditions="none" description="replace consecutive spaces with space" >
    <expresion><![CDATA[\s{2,}]]></expresion>
  </heuristic>
  <heuristic id="{1a474447-2bb7-4d38-9a35-9636af839ea9}" operation="replace" to="" conditions="none" description="Trim one or more spaces at start/end of string" >
    <expresion><![CDATA[(^\s+)|(\s+$)]]></expresion>
  </heuristic>
  <!-- Handle quotes -->
  <heuristic id="{1a474447-1998-4d38-1553-abcdef839ea8}" operation="replace" to="" conditions="none" description="replace consecutive quotes" >
    <expresion><![CDATA[\"+]]></expresion>
  </heuristic>
  <heuristic id="{1a474447-1998-4d38-1553-abcdef839ea9}" operation="replace" to="" conditions="none" description="Trim one or more quotes start/end of string" >
    <expresion><![CDATA[(^\"+)|(\"+$)]]></expresion>
  </heuristic>    
  <!-- replace null value with NULL -->
  <heuristic id="{1a474447-2bb7-4d38-9a35-9636af839ea1}" operation="replace" to="NULL" conditions="null" description="replace null or empty string with NULL" >
    <expresion><![CDATA[]]></expresion>
  </heuristic>  
  <!-- Handle languages -->
  <heuristic id="{0a474447-2bb7-4d38-9a35-9636af839e00}" operation="move" to="language" conditions="null" description="Move English from productname to language" >
    <expresion><![CDATA[\s(english)\s]]></expresion>
  </heuristic>  
  <heuristic id="{0a474447-2bb7-4d38-9a35-9636af839e01}" operation="replace" to="" conditions="none" description="Renove English or ENU from productname at the end of line" >
    <expresion><![CDATA[\s(english)\s*$|\sENU\s*$]]></expresion>
  </heuristic>
  <!--  Handle Vendor name tokens-->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d800}" operation="replace" to=" " conditions="none" description="Remove company monikers" >
    <expresion><![CDATA[(^|\s+|\b)(&\s+)?((Incorporated)|(Copyright)|(Corporation)|(Company)|(Limited)|(Reserved)|(Rights)|(AB)|(A\.B\.)|(AG)|(A\.G\.)|(All)|(for)|(GmbH)|(http(://)?)|(www\.)|(\.[a-z]{2,3})|(Inc)|(LLC)|(L\.L\.C\.)|(LLP)|(L\.L\.P\.)|(LP)|(L\.P\.)|(Co)|(LTD)|(Ltd)|(of)|(Press)|(SA)|(S\.A\.)|(Corp)|(Pty)|(KG)|(K\.G\.))(\b|$)]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-ffff-6521da95d800}" operation="replace" to=" " conditions="none" description="Remove vendor name tokens, less aggressive" >
    <expresion><![CDATA[(?i)(,\s*|&\s*|\s+)((Incorporated)|(Copyright)|(Corporation)|(Limited)|(All Rights Reserved)|(AB)|(A\.B\.)|(AG)|(A\.G\.)|(GmbH)|(Inc)|(LLC)|(L\.L\.C\.)|(LLP)|(L\.L\.P\.)|(LP)|(L\.P\.)|(Co)|(LTD)|(SA)|(S\.A\.)|(Corp)|(Pty)|(KG)|(K\.G\.))(\.|,|\b|$)]]></expresion>
  </heuristic>
  <!-- Remove country suffixes -->
  <heuristic id="{f6770d00-0de4-429d-9052-99d1edb75b84}" operation="replace" to="" conditions="none" description="Remove country suffixes" >
      <expresion><![CDATA[\b(United States|(?-i:US)|U\.S\.|United Kingdom|UK|U\.K\.)(\b|$)]]></expresion>
  </heuristic>
  <!-- Handle special superscript symbols like ™ -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d841}" operation="replace" to="" conditions="none" description="Remove superscript trade mark" >
    <expresion><![CDATA[[™®©]|(\((TM|R|C)\))]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-ffff-6521da95d841}" operation="replace" to="" conditions="none" description="Remove superscript trade mark, case insensitive" >
    <expresion><![CDATA[(?i)[™®©]|(\((TM|R|C)\))]]></expresion>
  </heuristic>    
  <!-- Handle special symbols, replace with space -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d840}" operation="replace" to=" " conditions="none" description="Replace with space" >
    <expresion><![CDATA[[\.\,\(\)\[\]\{\}\>\<\#\@\/\\\~\|\!\$\?\*\:\%\^\=\-_]]]></expresion>
  </heuristic>
  <heuristic id="{ede8b5da-8acb-4ca9-8c63-09b980c7c219}" operation="replace" to=" " conditions="none" description="Remove words in parentheses">
      <expresion><![CDATA[\s+\([^)]*\)]]></expresion>
  </heuristic>
  <!-- Remove Bundle -->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d850}" operation="replace" to="" conditions="none" description="remove Multi-store HW/SW Bundle" >
    <expresion><![CDATA[Multi-store HW/SW Bundle]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d851}" operation="replace" to="" conditions="none" description="remove HW/SW Bundle" >
    <expresion><![CDATA[HW/SW Bundle]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d852}" operation="replace" to="" conditions="none" description="remove Value Bundle" >
    <expresion><![CDATA[Value Bundle]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d853}" operation="replace" to="" conditions="none" description="remove Bundle" >
    <expresion><![CDATA[Bundle]]></expresion>
  </heuristic>
<!-- Dates-->
  <heuristic id="{023277b2-63cc-4ace-98c8-6521da95d860}" operation="replace" to="" conditions="none" description="remove dates ../../...." >
    <expresion><![CDATA[[0-9]{2}\/[0-9]{2}\/[0-9]{4}\ ]]></expresion>
  </heuristic>
  <heuristic id="{023277b2-63ab-4ace-98c8-6521da95d860}" operation="replace" to="" conditions="none" description="remove dates 20061204.231316" >
    <expresion><![CDATA[([0-9]\.)*[0-9]{8}(\.[0-9]{6})*]]></expresion>
  </heuristic>
  <!-- Remove 'for Windows' -->
  <heuristic id="{6ad5e204-ea17-4d6c-8b5a-576aaf83ddfd}" operation="replace" to="" conditions="none" description="remove 'for Windows'" >
    <expresion><![CDATA[\s+(for Windows)]]></expresion>
  </heuristic>
  <!-- Remove '(remove only)' -->
  <heuristic id="{afd4a874-778e-4a3f-9f27-e4602e960586}" operation="replace" to=" " conditions="none" description="remove '(remove only)'" >
    <expresion><![CDATA[(?i)\(remove.*?\)]]></expresion>
  </heuristic>
  <!-- Clean up parentheses -->
  <heuristic id="{a05e4413-a94c-4bb7-b323-a484dbf1e66f}" operation="replace" to=" " conditions="none" description="remove empty parentheses" >
    <expresion><![CDATA[\(\s*\)]]></expresion>
  </heuristic>
  <heuristic id="{a05e4413-a94c-4bb7-b323-a484dbf1e670}" operation="replace" to="(" conditions="none" description="Remove spaces after left parentheses" >
    <expresion><![CDATA[\(\s+]]></expresion>
  </heuristic>
  <heuristic id="{a05e4413-a94c-4bb7-b323-a484dbf1e671}" operation="replace" to=")" conditions="none" description="Remove spaces before right parentheses" >
    <expresion><![CDATA[\s+\)]]></expresion>
  </heuristic>
  <!-- Clean up commas -->
  <heuristic id="{a56e8ff5-1eed-43ad-aef4-09a8afe3b106}" operation="replace" to="," conditions="none" description="Remove spaces before commas" >
    <expresion><![CDATA[\s+,]]></expresion>
  </heuristic>
  
</heuristics>
