Rules...

1: Swap the search text to the replace text (can replace more than 1 occurance)

  • search
    • tuv
  • replace
    • ---
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • Abcdefghijklmnopqrs---wxyzAbcdefghijklmnopqrs---wxyzAbcdefghijklmnopqrs---wxyz

 

2: Swap all from the start of the line, to the end of the _first_ occurance of the search text)

  • search
    • mno
  • replace
    • \\\\\
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • \\\\\pqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

3: Swap all from the start of the _first_ occurance of the search text, to the end of the line

  • search
    • mno
  • replace
    • /
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • Abcdefghijkl/

 

4: Swap all from the start of the line, to the end of the _last_ occurance of the search text

  • search
    • mno
  • replace
    • //
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • //pqrstuvwxyz

 

5: Swap all from the start of the _last_ occurance of the search text, to the end of the line

  • search
    • mno
  • replace
    • \\
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijkl\\

 

6: Replace/remove the entire line if it starts with the search text

  • search
    • Abc
  • replace
    • $
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • $

 

7: Replace/remove the entire line if it ends with the search text

  • search
    • xyz
  • replace
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes

 

8: Replace/remove the entire line if it contains the search text

  • search
    • xyz
  • replace
    • !!!!!
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • !!!!!

 

11: Split the line at the _first_ occurance of the search text (replacing it). Start part is the first line

  • search
    • hij
  • replace
    • {*}
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • Abcdefg
      (*)klmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

12: Split the line at the _first_ occurance of the search text (replacing it). End part is the first line

  • search
    • hij
  • replace
    • [*]
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • [*]klmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
      Abcdefg

 

13: Split the line at the _last_ occurance of the search text (replacing it). Start part is the first line

  • search
    • hij
  • replace
    • (*)
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefg
      (*)klmnopqrstuvwxyz

 

14: Split the line at the _last_ occurance of the search text (replacing it). End part is the first line

  • search
    • hij
  • replace
    • <*>
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • <*>klmnopqrstuvwxyz
      AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefg

 

21: Insert a new line [Text before the _first_ occurance of the search text & the replacement text]

  • search
    • rst
  • replace
    • {{*}}
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • Abcdefghijklmnopq{{*}} AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

22: Add a new line [Text before the _first_ occurance of the search text & the replacement text

  • search
    • rst
  • replace
    • [[*]]
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz Abcdefghijklmnopq[[*]]

 

23: Insert a new line [Replacement text & the text from after the _first_ occurance of the search text]

  • search
    • rst
  • replace
    • ((*))
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • ((*))uvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

24: Add a new line [Replacement text & the text from after the _first_ occurance of the search text]

  • search
    • rst
  • replace
    • <<*>>
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz <<*>>uvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

25: Insert a new line [Text before the _last_ occurance of the search text & the replacement text]

  • search
    • rst
  • replace
    • {{*}}
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopq{{*}} AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

26: Add a new line [Text before the _last_ occurance of the search text & the replacement text

  • search
    • rst
  • replace
    • [[*]]
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopq[[*]]

 

27: Insert a new line [Replacement text & the text from after the _last_ occurance of the search text]

  • search
    • rst
  • replace
    • ((*))
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • ((*))uvwxyz
      AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz

 

28: Add a new line [Replacement text & the text from after the _last_ occurance of the search text]

  • search
    • rst
  • replace
    • <<*>>
  • this
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
  • becomes
    • AbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyzAbcdefghijklmnopqrstuvwxyz
      <<*>>uvwxyz

 

31: Recognize children based on the search text

  • search
    • Children...
  • replace
    • N/A
  • this
    • Joe Citizen Senior
      &Jane Outsider

      Children...

      Joe Citizen Junior
      &Jane Another_Outsider
      +Jane Citizen Junior
  • becomes
    • Joe Citizen Senior
      &Jane Outsider
      +Joe Citizen Junior
      +&Jane Another_Outsider
      ++Jane Citizen Junior

 

32: Convert generation numbers

  • search
    • N/A
  • replace
    • N/A
  • this
    • 1 Joe Citizen Senior
      &Jane Outsider
      2 Joe Citizen Junior
      &Jane Another_Outsider
      3 Jane Citizen Junior
  • becomes
    • Joe Citizen Senior
      &Jane Outsider
      +Joe Citizen Junior
      +&Jane Another_Outsider
      ++Jane Citizen Junior

 

41: Move marriage data to after the persons name (place in brackets)
[Note: Likely needs to run close to last as '
|_M_' would be inserted by a rule that ran before this one]

  • search
    • N/A
  • replace
    • N/A
  • this
    • Joe Citizen Senior
      &|_M_(Location) 21.2.1933 Jane Outsider
      +Joe Citizen Junior
      +&|_M_(Another Location) 30.3.1953 Jane Another_Outsider
      ++Jane Citizen Junior
  • becomes
    • Joe Citizen Senior
      &Jane Outsider|_M_21/2/1933 (Location)
      +Joe Citizen Junior
      +&Jane Another_Outsider|_M_30/3/1953 (Another Location)
      ++Jane Citizen Junior

 

42: Add replace text as Family Name of all people in the mainline
[Note: Likely needs to run close to last as it relies on the name being identifiable]

  • search
    • N/A
  • replace
    • SURNAME
  • this
    • Joe Senior
      &Jane Outsider
      +Joe Junior
      +&Jane Another_Outsider
      ++Jane Junior
  • becomes
    • Joe Senior SURNAME
      &Jane Outsider
      +Joe Junior SURNAME
      +&Jane Another_Outsider
      ++Jane Junior SURNAME