until end of line

until end of line

case-sensitivity (keywords, variable identifiers...)

case-sensitive Awk, B, BourneShell, C, C#, C++, CoffeeScript, F#, FishShell, Go, Haskell, Io, Java, JavaScript, Lua, Maple, Mathematica, Matlab, merd, Modula-3, OCaml, Perl, Perl6, Pike, Pliant, Prolog, Python, Ruby, Smalltalk, Tcl, XML, YAML, Yorick case-insensitive Ada, Assembler, Classic REXX, Common Lisp, CSS, Eiffel, Forth, HTML, Logo, Pascal, PL/I, Rebol, SGML, SQL92, Visual Basic case-sensitive: variables

case-insensitive: keywords, functions, constants... PHP case-sensitive: identifiers

case-insensitive: keywords E case-sensitive: identifiers

case-insensitive: commands MUMPS case-sensitive: upper case disallowed GNU-bc

what is the standard way for scrunching together multiple words

camelCase CoffeeScript, JavaScript CamelCase or camelCase C#, E, Go, Haskell, Io, Java, JavaScript, Mathematica, Pascal, Smalltalk, Tcl, Visual Basic underscores FishShell, GNU-bc, merd dots Logo hyphens Common Lisp, Emacs Lisp, Rebol, Scheme underscores for functions / types, unclear for modules / constructors OCaml UPPER_CASE BourneShell lowercasenoseparator Matlab underscores, UPPER_CASE for class names Eiffel CamelCase for classes, underscores for methods Python CamelCase for types, underscores for functions, variables, ... Pliant CamelCase for methods, types and modules, underscore for functions F# CamelCase for modules and classes, ALL_CAPS for constants, underscores for functions, variables, ... Ruby CamelCase for modules and classes, ALLCAPS for macros, underscores for methods, constants and variables Pike CamelCase for modules, ALL_CAPS for constants, unclear for functions / variables Perl, Perl6 CamelCase for variables, underscores for predicates Prolog usually lowercase or underscores, ALL_CAPS for macros C usually underscores C++ Camel_Case Ada

variable identifier regexp

[a-zA-Z][a-zA-Z0-9]* FishShell, Mathematica, PL/I, Smalltalk [a-zA-Z][_a-zA-Z0-9]* Eiffel, Matlab, Vimscript [a-zA-Z](_?[a-zA-Z0-9])* Ada [_a-zA-Z][_a-zA-Z0-9]* Awk, B, C, C#, C++, E, Go, Maple, PHP, Python, Tcl [_a-zA-Z0-9]+ BourneShell, Perl, Perl6 [a-zA-Z0-9]+ FishShell [_a-zA-Z][_a-zA-Z0-9]* or '[^']*' Pliant [_a-zA-Z$][_a-zA-Z0-9$]* Java [$A-Za-z_\x7f-\uffff][$\w\x7f-\uffff]* CoffeeScript, JavaScript [a-zA-Z%][a-zA-Z0-9]* MUMPS [_a-z][_a-zA-Z0-9]* Ruby [_a-z][_a-zA-Z0-9]*[!?']* merd [_a-z][_a-zA-Z0-9']* Haskell, OCaml, SML [_a-zA-Z][_a-zA-Z0-9']* F# [_A-Z][_a-zA-Z0-9]* Mercury, Prolog [_a-zA-Z!0&*/:<=>?^][_a-zA-Z!0&*/:<=>?^0-9.+-]* Scheme [a-zA-Z!?@#][a-zA-Z0-9!?@#]* Classic REXX [_a-zA-Z?!.'+*&|=~-][_a-zA-Z0-9?!.'+*&|=~-]* or

[^0-9[](){}":;/][^

\t[](){}":;/]* Rebol [a-z][a-z0-9_]* GNU-bc anything without a space and is not a number Common Lisp, Forth

function identifier regexp (if different from variable identifier regexp)

[_a-zA-Z][_a-zA-Z0-9]*[!?]? Ruby [_a-z][_a-zA-Z0-9]* Mercury, Prolog [A-Z][_a-zA-Z0-9]*(7) Vimscript [^ \t

\r\f]+ Tcl [^ \t

\r\f/]+ FishShell

keyword regexp (if different from variable identifier regexp)

[A-Z]+ Modula-3

type regexp (if different from variable identifier regexp)

[_A-Z][_a-zA-Z0-9']* Haskell [_a-z][_a-zA-Z0-9']* Mercury, OCaml

constant regexp (if different from variable identifier regexp)