function includeDollarSymbolText(string $input): bool {
// Regex to match $word$, case-insensitive
$cleanedText = preg_replace('/\$[a-z]+\$/i', '', $input);
// Check for any remaining dollar symbols
return strpos($cleanedText, '$') === false;
}
echo var_export(includeDollarSymbolText("abc xy \$text\$ z"), true) . "\n"; // ok
echo var_export(includeDollarSymbolText("abc xy \$ text\$ z"), true) . "\n"; // space
echo var_export(includeDollarSymbolText("abc xy \$\$ z"), true) . "\n"; // empty
echo var_export(includeDollarSymbolText("abc 100 \$text\$ z"), true) . "\n"; // ok
echo var_export(includeDollarSymbolText("abc \$1000 \$text\$ z"), true) . "\n"; // open $
echo var_export(includeDollarSymbolText("abc xy \$IBM\$ z \$Microsoft\$"), true) . "\n"; // ok
echo var_export(includeDollarSymbolText("abc xy \$F3\$ z"), true) . "\n"; // include number
echo var_export(includeDollarSymbolText("abc xy \$text z"), true) . "\n"; // missing close $
/*
run:
true
false
false
true
false
true
false
false
*/