Regular expressions from the checklists on scribenet.com are presented here with minimal context. These can be run on .sam and .scml files. For more details on how and when to use these searches, see the Regular Expressions Resource Supplement.
Quotation Marks, Parentheses, and Brackets
Find:
^[^“]*\”|\“[^”]*\“|\”[^“]*\”|\“[^”]*$
Find:
^ *(<[^>]+>)[^\(\n]* [^\(\n]*\)|\([^\n\)]*\(|\)[^\(\n]*\)|\([^\)\n]*$
Find:
^[^[]*\]|\][^[]*\]|\[[^]]*$|\[[^]]*\[
Find:
(^[^<{\n]*"|>[^<{\n]*"|}[^<{\n]*")
Find:
”([^ \)\<\]\:;\?\&\/—"])|([^ \t\(\>\[—])“
Find:
<i>\([^\n\)]*</i>\)|<i>“[^\n”]*</i>[\!:;,\.‘’“”\?\–]?”|<i>\[[^\n\]]*</i>\]|\(<i>[^\n\)]*\)</i>|“<i>[^\n”]*”</i>|\[<i>[^\n\]]*\]</i>
Find:
<(i|b|bi|sm|sm-i|sm-b|sm-bi)>\((.*)</\1>\)
Find:
\(<(i|b|bi|sm|sm-i|sm-b|sm-bi)>(.*)\)</\1>
Find:
’</i>s
Find:
‘([tT]is|\d\d)\b
Punctuation
Find:
([\!:;,\.‘’“”\?\–])\1
Find:
[\!:;,\?\–…][’”][A-Za-z0-9]|\.[”][A-Za-z0-9]|\.[’][A-Za-rt-z0-9]
Find:
([ \x{a0}])\.([ \x{a0}])\.([ \x{a0}])\.([ \x{a0}])\.
Find:
([\[\(“‘])( )|( )([\.,:;\?!\)\]’”])([^\x{a0}\d])|([A-Za-z0-9]+) \. \. ([A-Za-z0-9]+)
Find:
\.([\x{00A0} ])\.([\x{00A0} ])\.’([A-Za-zÀ-ÿ]+)|([A-Za-z0-9>]+)\.([\x{00A0} ])\.([\x{00A0} ])\.([\x{00A0} ])([\!:;,\?\–])
Find:
([^A-Z<][\.\?\!”])([A-Z])|[,:\)][A-Za-z“]|(?<!&);[A-Za-z“]|([”])([a-z])|,”,|(,\.)
Find:
([a-z])\((?!s\))
Find:
<crt(.*)(<url>www\.zondervan\.com</url>\. The)|Scribe, Inc
Find:
[a-zÀ-ÿ0-9]</(p|pf|psec|paft|pcon|rf|rf1|rf2|rff)>\n(?!\s+<bq)|</[ib]></rf[12f]?>\n|[;,\–\-\—]</[a-z]+h
Find:
(January|February|March|April|May|June|July|August|September|October|November|December)(\x{a0}| )([\d]+)(\x{a0}| )([\d]+)
Find:
(January|February|March|April|May|June|July|August|September|October|November|December)(\x{a0}| )([\d]+),([\d]+)
Find:
([A-Z]\.)+[A-Z][:?!, ]
Find:
([A-Za-z]\.)+[A-Za-z]</[^>]+>\.
Italic Commas and Periods
Find:
,</i>
Find:
</i>,
Find:
\.</i>
Find:
</i>\.
Find:
Jr</i>\.|Dr</i>\.|<i>St</i>\.|<i>Ms</i>\.|<i>Mr</i>\.|<i>Mrs</i>\.|<i>([Ee])t al</i>\.|U\.S</i>\.|U\.S\.A</i>\.|C\.E</i>\.|B\.C\.E</i>\.|B\.C</i>\.|A\.D</i>\.|([Ii])bid</i>\.|([Ii])\.e</i>\.|([Ee])\.g</i>\.|([Oo])p\. cit</i>\.|([Ee])tc</i>\.|Inc</i>\.|Bros</i>\.|<i>Id</i>\.|<i>fl</i>\.|<i>f</i>\.|<i>c</i>\.|<i>fig</i>\.
Unexpected Character Patterns
Find:
--|–-|—-|-–|-—|([a-z0-9]+)\||- -|'|“ | ”|\),[0-9]|([A-Za-z0-9]+)−([A-Za-z0-9]+)|“’
Find:
[A-Za-z]<i>[A-Za-z]|[A-Za-z]</i>[A-Za-z]|\.([A-Za-z])\.([A-Za-z])</([a-z]+)>\.
Find:
</(ct|ctfm|ctbm|cs|cn|pn|pt|ps|ut|un|us|ept|au|au1)>\n([ ]*)<ah[^a]|<structure>([^{])
Find:
([ \t])([0-9]{1,3})</toc([^e])|([ \t])([0-9ivxl]+)</tocfm|([ \t])([0-9]{1,3})</tocill|([ \t])([ivxl]+)</tocill
Find:
<dropcap>([A-Za-z])([A-Za-z])|<dropcap>([\[\(“‘\¿\¡])([A-Za-z])([A-Za-z])
Find:
([ ])–([0-9A-Za-z])|>–([0-9A-Za-z])|([A-Za-z0-9])—\. ([A-Za-z0-9]+)
Find:
</i>: <i>
Find:
<(p|pf|psec|paft|pcon|psep)>(?:<page[^>]*>)*\t
Find:
\b[\d]{4}[\-\—][\d]{4}\b|<(crt|cip)[^\n]+\b97[89][\d\-]*[\–\—]
Find:
([\d]){4}([\–\-\—])(author|editor|translator)
Find:
n´t|´s|s´
Find:
</fnnum>([\t \.]+)([a-z])
Find:
</fighn>(?:<[^>/]+>)?[^\s<]
Find:
<(sup|sup-i)>TM</\1>
Find:
([\d]+)\s+x\s+([\d]+)
Find:
\$([\d]+)(\x{a0}| )dollar
Find:
>(Edited|Translated) [A-Z]
Find:
[^p]p\.(\x{a0}| )([\d]+)–
Find:
</ah[^>]*>\s*<en>[\x{a0} \t]*<ennum[^>]*>(?:[234567890]|1\d)
Structure Tags and Chapter Divisions
Find:
<sam>\n[ ]*<structure>\{~\?~ST: end
Find:
<chapter[^>]*/>|id=""
Spaces and Tabs
Find:
( )(\x{a0})|(\x{a0})( )|(\x{a0})<([\/a-z0-9\-]+)>( )|( )<([\/a-z0-9\-]+)>(\x{a0})
Find:
([ \x{a0}])(\t)|(\t)([ \x{a0}])|\x{00A0} | \x{00A0}|([\x{00A0}])([\x{00A0} ])|([\x{00A0} ])([\x{00A0}])
Find:
( )<([ef]nref)([^>]*>[^<]*</\2>)
Find:
^( *)(<[^>]*>)([ \x{a0}]+)| $|[^\s][ \t\x{a0}]+(</[^>]*>) *$|^( *)(<[^\n]*?)( ){2,}
Find:
([^ ]\||\|[^ ])
Find:
([A-Za-z])</i>“|([\!:;,\.‘’“”\?\–])</i>“
Find:
[\x{a0} ]<[^<]*>[\x{a0} ]|[\x{a0} ]</[^<]*>[\x{a0} ]
Find:
<(tch|tch1|tch2|trhd|th|th1|th2|tatr|td|td1|td1p|td2|td2p|td3|td3p|tdf|tdl|tdnl|tdp|tdul|tn|nttd)>\t
Find:
^\s*<(?!eq|toc|[^>]*[bun]l|[fe]n)[^>]*>[^\n]*\t
Find:
[\t]{2,}
Write-in Lines
Find:
[_]{2,}
Incorrect Line Breaks
Find:
^[ ]*<(?!([^> ]*[sn]l|in|[^> ]*bq[fs]|rf))[^>]*>(?:<page[^>]*>)*[a-z]
Find:
<rf[^>]*>(?:<page[^>]*>)*(?!(d[eiu]|della|v[oa]n)\b)[a-z]
Find:
;</(?:rf|[fe]n>)
URLs
Find:
(<url( href[^>]*)?>[^<]*)[\x{2013}\x{2014} \x{a0}]
Find:
<url>([ \.\(\[])|([ ,\.\)\]])</url>
Find:
([^ \<\"\>])http|>([Aa])mazon\.com</url
Find:
([ ><"“'‘\(\[–\n—])(@[a-zA-Z0-9_]{1,15})
Find:
<[^>]*url[^>]*>[^<]*</[^>]*url[^>]*><url
Process the file to ePub 3 in the Digital Hub.
Open the ebook in Kindle Previewer.
Go to File > Run Quality Checks
Click Open Report.
ISBNs and Zip Codes
Search:
-
([\d]+)([\x{2013}\x{2014}-])([\d])([\x{2013}\x{2014}-])([\d]+)([\x{2013}\x{2014}-])([\d]+)([\x{2013}\x{2014}-])([\d])
Search:
-
([0-9][0-9][0-9][0-9][0-9])\–([0-9][0-9][0-9][0-9])
Typesetter Spaces
Find:
­|̳[2-9];|̴[0-4];| 
Find:
­|Ȁ[0-9A-C];| 
Find:
[\x{ad}\x{2000}-\x{2009}\x{200a}-\x{200c}\x{202f}]
Hyphen Spacing
Find:
(- )(?!(and|or|to|und)\b)
Find:
(?<!\band)(?<!\bor)(?<!\bto)(?<!\bund) -
Find:
%-[\d]+%
Missing Spaces around Tags and Commas
Find:
(</(?!dropcap)[^>]+>)([A-Za-zÀ-ÿ]+)|([A-Za-zÀ-ÿ]+)<(?![eft]nref|page)([^/][^>]*)>
Find:
,([a-zÀ-ÿ]+)([^ \n]*)
Find:
,(\d\d?[^\d]|\d{4})
Find:
(<in[12f]*>)(.*),[a-zÀ-ÿ0-9]
Scribing/Articulation
Search:
-
</[a-e]h[^>]*>\s*<[a-e]h[^a]|</(?:[fe]n|nt|footnote)[^>]*>\s*<[a-e]haft|</ct[^>]*>\s*<[a-e]h[^a]|</ahaft>\s*<p[^f]|</(ah|[b-e]h[^>]*)>\s*<p[^a]
Find:
<b([fl1]+)>(\t){0,1}([A-Za-z0-9]+|<symb>[A-Za-z0-9]+</symb>)|<b([fl1]+)><page id="p([0-9A-Za-z]+)"/>(\t){0,1}([A-Za-z0-9]+|<symb>[A-Za-z0-9]+</symb>)
Find:
<u([fl1]+)>(\t){0,1}([0-9]+)([\.\)])|<u([fl1]+)><page id="p([0-9A-Za-z]+)"/>(\t){0,1}([0-9\.]+)([\.\)])
Find:
<n[fl12345]+>(?:<page[^>]*>)*\s*[\(\[]?([^\d \(\)\[\]\.<>]{2})
Find:
</([^>/]*[nu]l[0-9p]*|(?:sb)?bl[0-9p]*)>\s+(</list>\s+)?<(p|pcon|paft)>
Find:
</([^>/]*)(pcon)([^>]*)>\n([ \t]*)<([^>/]*)(pcon)
Find:
</tocpt>(.*\n)+?\s*<toc[^f][^\n]*Conclusion
Small Caps
Find:
<(sm|sm-i|sm-b|sm-bi|tetr|tetr-i|tetr-b|tetr-bi)>([^<a-z]+)</\1>
Alt Text
Find:
alt="(Presentation|presentation)"
Find:
alt="[^">]*"[^">=]*"
Find:
Description automatically generated
Self-Closing Note Reference Tags
Find:
<([fe])nref/>|<([fe])nnum/>
Self-Closing and Unnecessary Tags (.sam/.scml)
Find:
<(?!cell|img|page)[^<]*/>|</([^>]*)>[^A-Za-z0-9\n]?<\1>|<((?!td|symb)[^>/]*)>[^A-Za-z0-9\n]?</\2>
Position of Tags and Spaces (.sam/.scml)
Find:
^( *)(<[^\n]*?)( )(</[^>]*>)|(<[^/|^>]*>)( )
Page IDs (.sam/.scml)
Find:
(<xref.*?>.*?)(<page id=".*?"/>)(.*?</xref>)|(</url>)(<page id=".*?"/>)(<url>)
Find:
<([^/>]*)>(<page[^>]*>)</\1>
Find:
[a-z]+<page id="([^<]*)"/>[a-z]+
Find:
<url>([^<]*)</url><page id="p([0-9A-Za-z]+)"/><url>([^<]*)</url>
Replace with:<url href="\1\3">\1</url><page id="p\2"/><url href="\1\3">\3</url>
Page references (.scml)
Find:
[^</][Pp]age
Single-Chapter Bible Books (.scml)
Search:
-
(<xbr t=")(Ob|Phm|2Jn|3Jn|Jud|Pr Az|Bel|Sus|Pr Man|LJe)( )([0-9-]+")
Find:
(<xbr t=")(Ob|Phm|2Jn|3Jn|Jud|Pr Az|Bel|Sus|Pr Man|LJe)( )([2-9]|[0-9]{2,})(:)([0-9-]+")
Blind Notes Pairs
Search:
-
<enref>([0-9]+)</enref>(.*)<ccust1>\1</ccust1>
DTD Validation Troubleshooting (.sam/.scml)
Search:
-
(</?)(a|abbr|ac|b|bcv|bi|bu|bxhn|ccust1|ccust1-i|ccust2|ccust2-i|ccust3|ccust3-i|chemb|cite|code|code-b|code-bi|code-i|dcrit|dcrit-b|dcrit-bi|dcrit-i|dcrit-ob|dcrit-red|dispk|dispk-i|dropcap|dropcap-i|ennum|enref|em|eqn|exhn|fighn|first|first-i|fnnum|fnref|frac|frac-b|frac-bi|frac-i|fterm|grc|grc-b|grc-bi|grc-i|grc-u|gt|gt-i|gt-sm|gtref|gtref-i|gtref-sm|heb|heb-b|heb-bi|heb-i|heb-u|hemb|hl|hl-b|hl-bi|hl-i|hl-iu|hl-u|hn|i|idx|img|iu|lang|lang-b|lang-bi|lang-i|med|ob|osf|osf-b|osf-bi|osf-i|page|pnum|rc|red|red-b|red-bi|red-hl|red-hl-b|red-hl-bi|red-hl-i|red-hl-iu|red-hl-u|red-i|red-iu|red-ob|red-sm|red-sm-i|red-sm-ob|red-strk|red-strk-b|red-strk-bi|red-strk-i|red-strk-iu|red-strk-u|red-u|sbhn|sm|sm-b|sm-bi|sm-i|sm-ob|smver|speaker|speaker-i|strk|strk-b|strk-bi|strk-i|strong|sub|sub-b|sub-bi|sub-i|sub-u|sup|sup-b|sup-bi|sup-i|sup-u|symb|symb-b|symb-i|symb-sub|symb-sub-b|symb-sub-bi|symb-sub-i|symb-sup|symb-sup-b|symb-sup-bi|symb-sup-i|taxclass|taxfamily|taxgenus|taxkingdom|taxorder|taxphylum|taxspecies|tel|tetr|tetr-b|tetr-bi|tetr-i|tetr-ob|tetr-red|tetr-red-i|tetr-red-ob|tgrc|tgrc-b|tgrc-bi|tgrc-i|theb|theb-i|theb-ob|theb-red|thn|tnnum|tnref|tnw|trh|trh-i|u|url|url-b|url-bi|url-i|ver|ver-b|xbk|xbr|xref|xref-i)\>([^>]*>)$
-
^( *)(</?)(a|abbr|ac|b|bcv|bi|bu|bxhn|ccust1|ccust1-i|ccust2|ccust2-i|ccust3|ccust3-i|chemb|cite|code|code-b|code-bi|code-i|dcrit|dcrit-b|dcrit-bi|dcrit-i|dcrit-ob|dcrit-red|dispk|dispk-i|dropcap|dropcap-i|ennum|enref|em|eqn|exhn|fighn|first|first-i|fnnum|fnref|frac|frac-b|frac-bi|frac-i|fterm|grc|grc-b|grc-bi|grc-i|grc-u|gt|gt-i|gt-sm|gtref|gtref-i|gtref-sm|heb|heb-b|heb-bi|heb-i|heb-u|hemb|hl|hl-b|hl-bi|hl-i|hl-iu|hl-u|hn|i|idx|img|iu|lang|lang-b|lang-bi|lang-i|med|ob|osf|osf-b|osf-bi|osf-i|page|pnum|rc|red|red-b|red-bi|red-hl|red-hl-b|red-hl-bi|red-hl-i|red-hl-iu|red-hl-u|red-i|red-iu|red-ob|red-sm|red-sm-i|red-sm-ob|red-strk|red-strk-b|red-strk-bi|red-strk-i|red-strk-iu|red-strk-u|red-u|sbhn|sm|sm-b|sm-bi|sm-i|sm-ob|smver|speaker|speaker-i|strk|strk-b|strk-bi|strk-i|strong|sub|sub-b|sub-bi|sub-i|sub-u|sup|sup-b|sup-bi|sup-i|sup-u|symb|symb-b|symb-i|symb-sub|symb-sub-b|symb-sub-bi|symb-sub-i|symb-sup|symb-sup-b|symb-sup-bi|symb-sup-i|taxclass|taxfamily|taxgenus|taxkingdom|taxorder|taxphylum|taxspecies|tel|tetr|tetr-b|tetr-bi|tetr-i|tetr-ob|tetr-red|tetr-red-i|tetr-red-ob|tgrc|tgrc-b|tgrc-bi|tgrc-i|theb|theb-i|theb-ob|theb-red|thn|tnnum|tnref|tnw|trh|trh-i|u|url|url-b|url-bi|url-i|ver|ver-b|xbk|xbr|xref|xref-i)\>
Search:
-
^( *)([^ <])|([^>\n])$
Search:
-
^( *)(<page)|(<page[^>]*>)$
Search:
-
<(?!(cell))[^>]*(/>)$
Search:
-
</([^>/]*)(en|fn)([^>]*)>\n([ \t]*)<([^>/]*)(table)