Regular expressions (Computer science)

You are here:

150 __ $a Regular expressions (Computer science)

450 __ $a Regexps (Computer science)

450 __ $a Regexes (Computer science)

450 __ $a Rational expressions (Computer science)

550 __ $w g $a Text processing (Computer science)

550 __ $w g $a Programming languages (Electronic computers)

670 __ $a Work cat: 2016962076: Introducing regular expressions, 2017.

670 __ $a 2016302350: Windham, Matthew. Introduction to Regular Expressions in SAS, 2014.

670 __ $a López, Félix. Mastering Python regular expressions, 2014.

670 __ $a 2001034634: Effective awk programming, 2001: $b table of contents (gawk-Specific Regexp Operators […] Using Dynamic Regexps)

670 __ $a Wikipedia article “Regular expression,” viewed online February 7, 2018 $b (A regular expression, regex or regexp (sometimes called a rational expression) is, in theoretical computer science and formal language theory, a sequence of characters that define a search pattern. Usually this pattern is then used by string searching algorithms for “find” or “find and replace” operations on strings.) $u

670 __ $a Ruby programming language documentation, Regexp class page, viewed 7 February 2018: $b (Regular expressions (regexps) are patterns which describe the contents of a string. They’re used for testing whether a string contains a given pattern, or extracting the portions that match.) $u

670 __ $a Perl 6 Documentation, Regexes, viewed 7 February 2018: $b(Regular expressions, regexes for short, are a sequence of characters that describe a pattern of text. Pattern matching is the process of matching those patterns to actual text.) $u


Currently the LCSH “Text processing (Computer science)” is the closest thing we have to express the topic of regular expressions.

However, text processing is an enormous subject—much broader than any work that is specifically about regular expressions.


  • there are works about the formal logic and mathematics of implementing, parsing, and using regular expressions, which have little direct relation to text processing as a subject
  • there are works about using regular expressions or regular expression-like languages to query/manipulate non-textual data

Other headings with BT: Text processing (Computer science):

  • Automatic indexing
  • Document markup languages
  • Latent semantic indexing
  • Microformats
  • Word processing

This is a pretty odd miscellany of NTs for Text processing. Regular expressions would fit as well as any of the others do here. I’d argue it’s far more appropriate here than “Microformats”

Other headings with BT: Programming languages (Electronic computers):

  • Pseudocode (Computer program language) — a combination of programming language and natural language used for computer program design
  • Query languages (Computer science) — a system designed to support an interactive dialogue for the retrieval, display, and sometimes update, of records, using variable criteria
  • XPath (Computer program language)

Among the myriad headings for specific programming languages (Ruby, Perl, Python, etc.) established as NTs of Programming languages (Electronic computers), you will also find the above-listed headings.

Like pseudocode, regexes are a ‘meta’ concept/skill in programming (as well as in using information retrieval and/or processing tools with advanced search/replace capabilities).

Like query languages, regexes are for retrieving and updating — but for strings, not records.

Like XPath, regexes are useful for identifying/selecting specific chunks of information on which to operate.

Examples works about regular expressions used to querying/processing other types of data:

  • 670 __ miRNAMatcher: High throughput miRNA discovery using regular expressions obtained via a genetic algorithm, 2014 (OCLC#: 887788641)
  • 670 __ 3D Regular Expressions – Searching Shapes in Meshes, 2013

Examples of works about regular expressions as a more abstract computer science/logical/mathematical topic, which are not about text processing:

  • 670 __ Using Semantic Unification to Generate Regular Expressions from Natural Language , 2013 (OCLC#: 854545240 — semantic query parsing)
  • 670 __ Finite automata and regular expressions, 2013 (OCLC#: 869466959 — computer science theory)
  • 670 __ 70865086: On axiom systems for regular expressions and on equations involving language, 1971 (Formal languages)

6 Replies to “Regular expressions (Computer science)”

  1. Other thoughts/concerns, as this is the first time I’ve suggested a subject heading (this site is VERY encouraging!):

    1. In a perfect world, a lot of bib records would retrospectively need this heading added. How much does the fact that people have been writing about regular expressions since computer science blew up in the 1960s impact the judgment about whether we need a heading for it?

    2. The submission for Gender-nonconforming people cites bib records by their LCCNs. Do the titles cited require LCCNs?

    3. Not sure what to do about “952 – LC pattern or SCM instruction sheet ” – I read and consulted SCM H 202, but was still a bit confused. I didn’t base the form of 650 on a pattern heading or a particular SCM instruction sheet. Is this required?

    4. I added the computer science qualifier to the 450 for Rational expressions (Computer science) because it’s an otherwise extremely vague-sounding phrase. Of course “regular expressions” probably only sounds like an obvious, specific thing to me because I already know what it is. Should the 150 also have the qualifier?


    1. Hooray! Thanks so much for suggesting the term!
      1. To be honest, I’m not sure. I’m sure it factors in the decision to some extent, but if the heading is needed and useful (and this seems to be), I don’t see that that would be a reason to argue against it.
      2. Nope, LCCNs are not required as far as I know.
      3. Patterns aren’t required, nor a particular instruction sheet, if there’s not one that applies to your heading. (Though you would want to understand the pattern in the subject area you’re working in.)
      4. I think it should have a qualifier, yes!

  2. Hi Kristina,

    a few responses

    1. There is a 952 field ” ___ bib. records to be changed” which can be useful to use, if you do a cursory search of LC’s catalog to come up with an approximation of how many of their records could benefit from the heading   

    2. Titles cited do not require LCCNs [because as you note, LC doesn’t have every resource!] but you want to structure a 670 that includes a control number like this:

    XXXXXXXX: Author. Title [if it’s an LCCN]

    OCLC: XXXXXXX Author. Title [if not an LCCN]

    3. LC pattern is not required if it does not conform to common pre-set patterns.

    4. I’d probably add a qualifier to the 150 as well. To the unfamiliar it may sound like it refers to ‘common everyday sayings/idioms’. Also the sheer consistency of the other NTs of Programming languages inclines me to want to include a qualifier. Same with the 450s.

  3. 1. If anything, I think that’s evidence the heading is needed.
    2. LCCNs are not required.
    3. A pattern citation is only used if you followed an existing pattern — if that’s not relevant, it’s not required.
    4. Not sure about that one, but I suspect the qualifier is not needed for the 150 (but have no source for that)

    PS: thanks for the intro to this site!

  4. Received notification that this was approved! Thanks, Cataloging Lab!

    Re: sp2018002310 (Regular expressions (Computer science))
    Your subject heading proposal was approved on monthly list 1810.

Leave a Reply

Your email address will not be published. Required fields are marked *