$re = '/\bCUI\b/mxsuUJD';
$str = '/**
Contributors: Charles Staich
Match Confidence: Low
Language: Regular Expressions (regex)
Language Version:
Flags:
Purpose: Match CUI Basic and CUI Specified. Note the importance of evaluating multiple possible labels, such that CUI Specified may also be considered if this pattern matches. CUI Specified requires *at least* the same protections as CUI Basic (citation needed).
Assumptions: CUI Basic and CUI Specified documents contain the phrase \'CUI\'
Plain English Pattern Narrative:
Case sensitive, and does not match \'cui\'.
Indiscriminately matches any single instance of the word* \'CUI\' without any additional qualifiers, context, or markings necessary (Low Confidence)
Capturing Group(s): None
Definitions:
Word: A string of alphanumeric characters surrounded by word boundaries (\\b).
Comments:
Do not use this in Production without heavy testing.
I realize now why the community has taken to using the word cooey. I\'m certain there have been many collective hours spent reviewing false positive matches they created through filing standards, policy, communications, and documentation.
**/
// PATTERN:
\\bCUI\\b
// POSITIVE CASES:
CUI
asdf CUI jkl;
This document does not contain CUI.
This portal is not permitted to be used for transferring CUI.
No CUI allowed.
===CUI===
(CUI)
***CUI***
^CUI^
!CUI!
~CUI~
CUI//SP-TEST
CUI//TEST
// NEGATIVE CASES:
cui
0CUI-
ACUI*
-CUI2
CUi CuI cUI
AAACUIAAA
Cooey
Circuit
CIRCUIT
CUISP
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php