158
Chapter 7: Using Regular Expressions in Functions
However, sometimes you might want to override this default behavior to find the shortest string
that matches the regular expression. ColdFusion includes minimal-matching quantifiers that let
you specify to match on the smallest string. The following table describes these expressions:
If you modify the previous example to use the minimal-matching syntax, the code is as follows:
<cfset sLenPos=REFind("
<b>(.*?)</b>
", "<b>one</b> <b>two</b>", 1, "True")>
<cfoutput>
<cfdump var="#sLenPos#">
</cfoutput><br>
The following figure shows the output of the
cfdump
tag:
Thus, the length of the string found by the regular expression is 10, corresponding to the string
"<b>one</b>".
Regular expression examples
The following examples show some regular expressions and describe what they match:
Expression
Description
*?
minimal-matching version of *
+?
minimal-matching version of +
??
minimal-matching version of ?
{min,}?
minimal-matching version of {min,}
{min,max}?
minimal-matching version of {min,max}
{n}?
(no different from {n}, supported for notational consistency)
Expression
Description
[\?&]value=
A URL parameter value in a URL.
[A-Z]:(\\[A-Z0-9_]+)+
An uppercase DOS/Windows path in which (a) is not the
root of a drive, and (b) has only letters, numbers, and
underscores in its text.
[A-Za-z][A-Za-z0-9_]*
A ColdFusion variable with no qualifier.
([A-Za-z][A-Za-z0-9_]*)(\.[A-Za-z]
[A-Za-z0-9_]*)?
A ColdFusion variable with no more than one qualifier; for
example, Form.VarName, but not Form.Image.VarName.
(\+|-)?[1-9][0-9]*
An integer that does not begin with a zero and has an
optional sign.
(\+|-)?[1-9][0-9]*(\.[0-9]*)?
A real number.
Summary of Contents for ColdFusion MX
Page 1: ...Developing ColdFusion MX Applications...
Page 22: ...22 Contents...
Page 38: ......
Page 52: ...52 Chapter 2 Elements of CFML...
Page 162: ......
Page 218: ...218 Chapter 10 Writing and Calling User Defined Functions...
Page 250: ...250 Chapter 11 Building and Using ColdFusion Components...
Page 264: ...264 Chapter 12 Building Custom CFXAPI Tags...
Page 266: ......
Page 314: ...314 Chapter 14 Handling Errors...
Page 344: ...344 Chapter 15 Using Persistent Data and Locking...
Page 349: ...About user security 349...
Page 357: ...Security scenarios 357...
Page 370: ...370 Chapter 16 Securing Applications...
Page 388: ...388 Chapter 17 Developing Globalized Applications...
Page 408: ...408 Chapter 18 Debugging and Troubleshooting Applications...
Page 410: ......
Page 426: ...426 Chapter 19 Introduction to Databases and SQL...
Page 476: ...476 Chapter 22 Using Query of Queries...
Page 534: ...534 Chapter 24 Building a Search Interface...
Page 556: ...556 Chapter 25 Using Verity Search Expressions...
Page 558: ......
Page 582: ...582 Chapter 26 Retrieving and Formatting Data...
Page 668: ......
Page 734: ...734 Chapter 32 Using Web Services...
Page 760: ...760 Chapter 33 Integrating J2EE and Java Elements in CFML Applications...
Page 786: ...786 Chapter 34 Integrating COM and CORBA Objects in CFML Applications...
Page 788: ......