User:SOTO/bot tricks: Difference between revisions

From Tardis Wiki, the free Doctor Who reference
m
\r\n does not work on the version of regex used by Core
m (\r\n does not work on the version of regex used by Core)
Line 7: Line 7:
==== Step 2 ====
==== Step 2 ====
<pre style="background:black!important;color:white">
<pre style="background:black!important;color:white">
python pwb.py replace -cat:"New category" -regex "\[\[Category:(New category)\]\]\r\n([\s\S]*)\r\n\[\[Category:(.*?)\]\]" "\2\n[[Category:\3]]\n[[Category:\1]]" -pt:2
python pwb.py replace -cat:"New category" -regex "\[\[Category:(New category)\]\]\n([\s\S]*)\n\[\[Category:(.*?)\]\]" "\2\n[[Category:\3]]\n[[Category:\1]]" -pt:2
</pre>
</pre>
'''Absolute bottom'''
'''Absolute bottom'''
<pre style="background:black!important;color:white">
<pre style="background:black!important;color:white">
python pwb.py replace -cat:"New category" -regex "\[\[Category:(New category)\]\]\r\n([\s\S]*)\r\n\[\[Category:(.*?)\]\]" "\2\n[[Category:\3]]\n[[Category:\1]]" "\[\[Category:(New category)\]\]\r\n\[\[Category:(.*?)\]\]" "[[Category:\2]]\n[[Category:\1]]" -pt:2
python pwb.py replace -cat:"New category" -regex "\[\[Category:(New category)\]\]\n([\s\S]*)\n\[\[Category:(.*?)\]\]" "\2\n[[Category:\3]]\n[[Category:\1]]" "\[\[Category:(New category)\]\]\n\[\[Category:(.*?)\]\]" "[[Category:\2]]\n[[Category:\1]]" -pt:2
</pre>
</pre>


Line 39: Line 39:
=== Autolinking infobox variables ===
=== Autolinking infobox variables ===
<pre style="background:black!important;color:white;font-size:.8em">
<pre style="background:black!important;color:white;font-size:.8em">
python pwb.py replace -regex "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12\n|\1featuring10\2=\3\13" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\r\n" "\n|\1featuring\2=\3\4\n" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12\n|\1featuring10\2=\3\13" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5" "\r\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\}\}\r\n" "\n|\1featuring\2=\3\4\n" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11\n|featuring9\2=\3\12\n|featuring10\2=\3\13" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11\n|featuring9\2=\3\12" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6" "\r\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring\d)  " "|\1\2  " "\|( *)(featuring\d\d)    " "|\1\2  " -transcludes:"Infobox Story" -summary:"Autolinking featuring variable" -pt:2
python pwb.py replace -regex "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12\n|\1featuring10\2=\3\13" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\], \[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\n" "\n|\1featuring\2=\3\4\n" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12\n|\1featuring10\2=\3\13" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11\n|\1featuring9\2=\3\12" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10\n|\1featuring8\2=\3\11" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9\n|\1featuring7\2=\3\10" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8\n|\1featuring6\2=\3\9" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7\n|\1featuring5\2=\3\8" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6\n|\1featuring4\2=\3\7" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5\n|\1featuring3\2=\3\6" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\|(.*?)\}\}" "\n|\1featuring\2=\3\4\n|\1featuring2\2=\3\5" "\n\|( *)featuring( *)=( *)\{\{il\|(.*?)\}\}\n" "\n|\1featuring\2=\3\4\n" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11\n|featuring9\2=\3\12\n|featuring10\2=\3\13" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11\n|featuring9\2=\3\12" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10\n|featuring8\2=\3\11" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9\n|featuring7\2=\3\10" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8\n|featuring6\2=\3\9" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7\n|featuring5\2=\3\8" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6\n|featuring4\2=\3\7" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5\n|featuring3\2=\3\6" "\n\|( *)featuring( *)=( *)\[\[(.*?)\]\]\<br */*\>\[\[(.*?)\]\]" "\n|\1featuring\2=\3\4\n|featuring2\2=\3\5" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|\1featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring\d)  " "|\1\2  " "\|( *)(featuring\d\d)    " "|\1\2  " -transcludes:"Infobox Story" -summary:"Autolinking featuring variable" -pt:2
</pre><!--
</pre><!--


"\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\r\n" "|\1\2\3=\4\5\n"-->
"\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring|featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n" "\|( *)(featuring.*)( *)=( *)(.*?)\|(.*?)\n" "|\1\2\3=\4\5\n"-->


=== Checking for double NameSorts ===
=== Checking for double NameSorts ===
Line 69: Line 69:
===== Overly complicated spacing fix =====
===== Overly complicated spacing fix =====
<pre style="background:black!important;color:white">
<pre style="background:black!important;color:white">
python pwb.py replace -regex "\{\{Infobox([\s\S]*?)\}\}\r\n\{\{([Yy]ou may)" "{{Infobox\1}}{{you may" "\{\{Infobox([\s\S]*?)\}\}\r\n\{\{([Dd]ab page)" "{{Infobox\1}}{{dab page" "\{\{Infobox([\s\S]*?)\}\}\r\n\{\{([Ww]ikipediainfo)" "{{Infobox\1}}{{wikipediainfo" "(\}\}\{\{|\{\{)([sS]tub|.*? stub|wikipediainfo)\}\}\{\{(you may|dab page)" "\1\2}}\n{{\3" "\r\n\}\}\{\{(.*?)\}\}\{\{(you may|dab page|wikipediainfo)" "\n}}{{\1}///}{{\2" "\{\{Infobox([\s\S]*?)(\]\]|\)|\w)\}\}\{\{(you may|dab page|wikipediainfo)" "{{Infobox\1\2\n}}{{\3" "\}\/\/\/\}" "}}" "\{\{Infobox([\s\S]*?)\}\}\r\n\r\n'''" "{{Infobox\1}}\n'''" -summary:"Templates:
python pwb.py replace -regex "\{\{Infobox([\s\S]*?)\}\}\n\{\{([Yy]ou may)" "{{Infobox\1}}{{you may" "\{\{Infobox([\s\S]*?)\}\}\n\{\{([Dd]ab page)" "{{Infobox\1}}{{dab page" "\{\{Infobox([\s\S]*?)\}\}\n\{\{([Ww]ikipediainfo)" "{{Infobox\1}}{{wikipediainfo" "(\}\}\{\{|\{\{)([sS]tub|.*? stub|wikipediainfo)\}\}\{\{(you may|dab page)" "\1\2}}\n{{\3" "\n\}\}\{\{(.*?)\}\}\{\{(you may|dab page|wikipediainfo)" "\n}}{{\1}///}{{\2" "\{\{Infobox([\s\S]*?)(\]\]|\)|\w)\}\}\{\{(you may|dab page|wikipediainfo)" "{{Infobox\1\2\n}}{{\3" "\}\/\/\/\}" "}}" "\{\{Infobox([\s\S]*?)\}\}\n\n'''" "{{Infobox\1}}\n'''" -summary:"Templates:
  [[T:SPACING|Spacing]]" -start:! -pt:2
  [[T:SPACING|Spacing]]" -start:! -pt:2
</pre>
</pre>
Line 75: Line 75:
==== Before headings ====
==== Before headings ====
<pre style="background:black!important;color:white">
<pre style="background:black!important;color:white">
python pwb.py replace -regex "(\w|\)|\.|\')\r\n==" "\1\n\n==" "(\w|\)|\.|\')( *)\r\n==" "\1\n\n==" "\r\n\r\n\r\n==" "\n\n==" -excepttext:"PLEASE do not alter" -summary:"[[T:SPACING|Vertical spacing]]" -start:! -pt:2
python pwb.py replace -regex "(\w|\)|\.|\')\n==" "\1\n\n==" "(\w|\)|\.|\')( *)\n==" "\1\n\n==" "\n\n\n==" "\n\n==" -excepttext:"PLEASE do not alter" -summary:"[[T:SPACING|Vertical spacing]]" -start:! -pt:2
</pre>
</pre>


Line 81: Line 81:
This ''baasically'' does the job, though it's messy and inefficient:
This ''baasically'' does the job, though it's messy and inefficient:
<pre style="background:black!important;color:white">
<pre style="background:black!important;color:white">
python pwb.py replace -regex "\r\n(\*+)(\S)" "\n\1 \2" "(==+)(\S.*?\S)(==+)" "\1 \2 \3" "(=+|==|===|====) = (.*?) = (=+|==|===|====)" "\1= \2 =\3" "=== =" "====" "(\*+|\*\*|\*\*\*) \* (.*?)" "\1* \2" -start:! -pt:2
python pwb.py replace -regex "\n(\*+)(\S)" "\n\1 \2" "(==+)(\S.*?\S)(==+)" "\1 \2 \3" "(=+|==|===|====) = (.*?) = (=+|==|===|====)" "\1= \2 =\3" "=== =" "====" "(\*+|\*\*|\*\*\*) \* (.*?)" "\1* \2" -start:! -pt:2
</pre>
</pre>


Tech, Bots, Bureaucrats, emailconfirmed, Administrators
231,276

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.